Dispenser system and methods for medication compliance

ABSTRACT

Systems and methods are provided for dispensing medication in a predetermined amount. An exemplary system and method may include operations and/or instructions comprising dispensing medicine from a first medicine container to a transfer device; dispensing medicine from the transfer device to a second medicine container, monitoring a medicine distribution relative to the first medicine container, the second medicine container, and the transfer device by way of at least one monitoring device, and automatically adjusting the medicine distribution among the first medicine container, the second medicine container, and the transfer device.

CROSS-REFERENCE TO RELATED APPLICATIONS

This non-provisional application is based on and claims priority to PCTApplication No. PCT/US2017/048643 filed Aug. 25, 2017, which is based onand claims priority to U.S. Provisional Patent Application No.62/379,866 filed Aug. 26, 2016, and claims priority to U.S. ProvisionalPatent Application No. 62/416,251 filed Nov. 2, 2016. Thisnon-provisional application also incorporates by reference PCTApplication PCT/US2017/040863 filed Jul. 6, 2017, which claims priorityto U.S. Non-Provisional patent application Ser. No. 15/613,852 filedJun. 5, 2017, which is a continuation of and claims priority to U.S.Non-Provisional patent application Ser. No. 15/613,675 filed Jun. 5,2017, which is based on and claims priority to U.S. Provisional PatentApplication No. 62/392,621 filed Jun. 6, 2016. This non-provisionalapplication is also based on U.S. patent application Ser. No. 15/395,076filed Dec. 30, 2016, and based on U.S. patent application Ser. No.15/202,778 filed Jul. 6, 2016. All of the above-referenced applicationsare hereby incorporated by reference in their entirety.

BACKGROUND

Improving medical adherence and compliance is an area of interest formedical practitioners and patients alike. Traditional solutions, likethe various types of pill boxes and smart caps, may fail to address theroot causes of medical non-adherence completely and effectively.

For instance, in an attempt to improve patient compliance, some systemsmay include timer-like functions or smart phone applications to remindpatients when to take specific medications. However, these solutions maynot effectively monitor whether the right dosage has been taken. Forinstance, tracking each time a bottle has been opened may not accountfor, for instance, how many pills are taken at a time. Furthermore,pharmacists or clinicians may not properly preprogram a patient's drugroutine into a solution (e.g., in the form of programming a traditionalRF tag, as an example). Such can limit accessibility of solutions to aminority of the population and may prevent proper usage for manypatients and caregivers. For people taking multiple medications, thereis always a possibility of mixing-up pills between reminders. Forinstance, a physical reminder device initially set-up to remind andtrack pill A may not track a second pill B if misplaced in a bottle.

Pre-sorting pill devices (e.g., pill boxes) may help manage complexmedicine regimens. For instance, a user may actively prepare themedications to be taken over a coming week or even a month. However,these solutions may include significant cognitive effort, andpre-sorting the medications can be both cumbersome for the user, andprone to errors in sorting the medications correctly (i.e., the user maynot correctly sort out the correct medication, in the right dosage, forthe right time, all the time). Other solutions may fail to effectivelyremind or notify the patient when to take a certain dosage ofmedication.

There have also been numerous attempts to develop automatic dispensingsystems. However, previous medicine-dispensing devices may fail toreliably dispense medications when needed.

Therefore, a need in the field exists for a solution that can not onlydispense and remind patients when to take specific medications, but alsotrack that the correct dosages have been taken by the patient at thecorrect time and ensure that the right medication is taken. A need alsoexists for a dispensing system to successfully determine whether therehas been a mistake in the dispensing process without intervention fromthe patient; this need exists to increase operational reliability toextremely high levels. A further need exists for a reminder systemnotifying patients to bring their medications along when they leavetheir homes. A need also exists for a solution for the above, whilestill remaining accessible to an average patient (i.e., having onlyminimal changes to the patient's lifestyle) since some solutions rely onpharmacists or clinicians to program the device, which can limitaccessibility of the solution to limited populations with access to thetechnology.

BRIEF DESCRIPTION OF THE DRAWINGS

The above, as well as other advantages of the present disclosure willbecome readily apparent to those skilled in the art from the followingdetailed description when considered in light of the accompanyingdrawings, in which:

FIG. 1 is a schematic diagram of an exemplary system;

FIG. 2 is a perspective view of an exemplary dispensing unit of thesystem as shown in FIG. 1;

FIG. 3 is a perspective view of an exemplary sub-assembly of thedispensing unit as shown in FIG. 2;

FIG. 4A illustrates a medicine container with a storage nest;

FIG. 4B illustrates the medicine container with storage nest of FIG. 4Ain an exploded view;

FIG. 5 is a schematic block diagram illustrating an exemplary system;

FIG. 6 is a flow diagram illustrating an exemplary process for settingup the system of FIG. 1 for operation;

FIG. 7 is a flow diagram illustrating an exemplary process for inputtingprescription information;

FIG. 8 is a flow diagram illustrating an exemplary process for inputtingmedicine container information;

FIG. 9A is a flow diagram illustrating an exemplary process fordispensing a dose of medicine;

FIG. 9B is a flow diagram illustrating an exemplary process forcontinuing to iterate beyond FIG. 9A for dispensing a dose of medicine;

FIG. 10 is a flow diagram illustrating an exemplary process fordispensing a dose of medicine via the exemplary sub-assembly of FIG. 3;

FIG. 11A is a perspective view of a sub-assembly according to anotherexemplary approach;

FIG. 11B illustrates the exemplary system of FIG. 11A during operation;

FIG. 11C illustrates a top view of the exemplary system of FIG. 11B;

FIG. 12 is a flow diagram illustrating an exemplary process fordispensing a dose of medicine via the exemplary sub-assembly of FIGS.11A-11C;

FIG. 13A is a perspective view of a sub-assembly according to anotherexemplary approach;

FIG. 13B illustrates the exemplary system of FIG. 13A during operation;

FIG. 14 is a flow diagram illustrating an exemplary process fordispensing a dose of medicine via the exemplary sub-assembly of FIG.13A-13B;

FIG. 15A is a perspective view of a sub-assembly according to anotherexemplary approach;

FIG. 15B illustrates the exemplary system of FIG. 15A during operation;

FIG. 16 is a flow diagram illustrating an exemplary process fordispensing a dose of medicine via the exemplary sub-assembly of FIG.15A-15B;

FIG. 17A is a perspective view of a sub-assembly according to anotherexemplary approach;

FIG. 17B illustrates the exemplary system of FIG. 17A during operation;

FIG. 17C illustrates a top view of the exemplary system of FIG. 17B;

FIG. 18 is a flow diagram illustrating an exemplary process fordispensing a dose of medicine via the exemplary sub-assembly of FIG.17A-17C;

FIG. 19A is a perspective view of a sub-assembly according to anotherexemplary approach;

FIG. 19B illustrates the exemplary system of FIG. 19A during operation;

FIG. 20 is a flow diagram illustrating an exemplary process fordispensing a dose of medicine via the exemplary sub-assembly of FIG.19A-19B;

FIG. 21A is a perspective view of a sub-assembly according to anotherexemplary approach;

FIG. 21B illustrates the exemplary system of FIG. 19A during operation;and

FIG. 22 is a flow diagram illustrating an exemplary process fordispensing a dose of medicine via the exemplary sub-assembly of FIG.21A-21B.

DETAILED DESCRIPTION

The present disclosure relates to devices supporting medicationcompliance. More specifically, this may include an automatic medicinedispensing system with a portable monitoring device for notifying userswhen to take their medications and for logging when medications havebeen taken automatically through a programmable patient apparatus.

The present disclosure includes a system and method and a set of deviceswhich, when used together, assist people in managing either theirmedications or the medications of somebody they are taking care of. Byusing the disclosed medicine dispensing method the disclosed devicedispenses medications automatically and more accurately than otheravailable dispensing devices, notifying patients when to take specificmedications and track the exact dosage taken by a patient at a giventime, all while ensuring the notification is for the originally intendedmedication. For example, by using the prescription data input method ofthis disclosure, the systems herein may be readily programmable byindividual patients. Also, the use of a location tracking method createsa way to remind patients when medications may have been forgotten athome.

Further areas of applicability will become apparent from the descriptionprovided herein. It should be understood that the description andspecific examples are intended for purposes of illustration only and arenot intended to limit the scope of present disclosure.

The following description is merely exemplary in nature and is notintended to limit the present disclosure, application, or uses. Itshould be understood that throughout the drawings, correspondingreference numerals indicate corresponding parts and features. The terms“device,” “unit” and “module” may be used interchangeably. The terms“robot” means a complete robot system and/or different sub-system of thesame robot or any type of machines. The term “medicine” means any formof medicine that may include a pill or capsule.

The systems and methods herein may include one or more of a station dooror a medicine container loading station door (MCLSD), a storagecontainer or medicine storage container (MSC), a loading station ormedicine container loading station (MCLS), a reminder device or medicinereminder unit (MRU), a travel device or medicine travel unit (MTRU), acontainer transfer device or medicine container transfer unit (MCTU), astorage nest or medicine container storage nest (MCSN), a loading pointor medicine container loading point (MCLP), a discharge point ormedicine discharge point (MDP), a medicine transfer device or medicinetransfer unit (MTU), a medicine container or dispensed medicinecontainer (DMC), a transfer container or medicine transfer container(MTC), an identification device or medicine container identificationunit (MCIU), a standard container or original medicine container withoutcap (OMC), a detecting device or weight detecting device (WDD), an armtool or end of arm tool (EOAT), an alert device or travel alert unit(TAU), and a checking station or weight checking station (WCS).

Referring now to the figures, FIG. 1 illustrates an exemplary system 100that is configured to receive, store, monitor, display and transfermedication information. The system 100 may be configured for monitoringthe dosage and usage of prescription medication. The system 100 may alsobe configured to dispense the prescription medication according torequired dosages. The system 100 may include a dispensing device 102 andat least one of assemblies 140, 150 a-d, 160, and 170. Generally,assembly 140 may be a travel alert device, assemblies 150 a-d may bemedicine travel devices, and assemblies 160 and 170 may be medicinereminder devices, for example, as described in detail in U.S. patentapplication Ser. Nos. 15/613,675 and 15/613,852. The dispensing device102 may include a processor 106, a memory 108 with a program 110 storedthereon, a display 112, at least one input/output (I/O) device 114, anda communication device 116, as described in more detail with respect toFIG. 5.

Medication information may include any information associated withmedication or medicine. Medication information may be associated with orinclude a prescription (e.g., patient name, prescriber name, strength,dosage, quantity, expiration, use directions, or drug or dietinteractions), a container type (e.g., shape, size, or color), patientinformation (e.g., name or history), or a combination thereof.Medication information may include other information associated with apatient or medication.

Prescription information may include medication information associatedwith a patient or as prescribed or defined by a user such as medicalprofessional or a patient. Container information may include medicationinformation associated with a medication container or according to anidentifier on a medication container. As such, the prescriptioninformation and container information may or may not match depending onwhether the prescription was properly and accurately fulfilled or not.The container information may match the medication information if thecontent of the medicine container complies with the prescription, andthus the system may generate a notification or alert indicatingcompliance. The container information may not match the medicationinformation if the contents of the medicine container do not comply withthe prescription, and thus the system may generate a notification oralert indicating non-compliance. Accordingly, the systems herein maycompare the prescription information and the container information todetermine medication compliance or non-compliance.

Embodiments may utilize and compare multiple types of information, e.g.,related information received from distinct sources, including, but notlimited to, hospitals, pharmacies, doctors' offices, the National DrugCode (NDC), and the like. For example, the system may receiveinformation associated with a prescription (e.g., as defined by a usersuch as medical professional or patient), a medication or medicine(e.g., as defined by the contents of a medication container or by amanufacturer), and a medication container (e.g., as defined by the sizeand shape of the container or as labeled on the container). These typesof information should be the same if everything was entered and receivedcorrectly, but because the information is input separately, theinformation from various sources may not be the same. For example,errors may be introduced by way of manual inputs, user mismatches,computer transfer, RF reader, OCR, etc. As such, the system hereinleverages the information from various sources to increase the accuracyof the medication actually taken by the patient. More specifically, theinformation is received from distinct sources and compared to determinecompliance or non-compliance, thereby reducing the likelihood of errorwith multiple ways of receiving the same types of information. Dependingon whether there is a match or mismatch, the system may alert or notifythe user regarding the same to reduce the possibility of the patienttaking the wrong medication. Accordingly, the system may be advantageousin increasing the effectiveness of treatment, e.g., by informationredundancy and monitoring information with respect to at least twosources.

System 100 may further include at least one of a device 103, a server104, a network 118, a database 122, and connections 124. An exemplarydevice 103 may include any computing device including, but not limitedto, a mobile device, cellular phone, smartphone, tablet computer, nextgeneration portable device, handheld computer, notebook, or laptop. Thedevice 103 may include a processor 106 that executes program 110 toprovide the operations herein. The device 103 may include a memory 108that stores medication information and program 110. The device 103 mayinclude a communication device 116 that communicates with at least oneof the dispensing device 102, the assemblies 150-170, server 104,network 118, and database 122. The device 103 may provide operations toand control the functionality of the dispensing device 102. In additionor alternatively, the dispensing device 102 may be controllable via itsown processor 106.

Server 104 may include any computing system. For example, server 104 mayinclude a user profile server for generating and storing a user profilefor each user, server 104 may be configured to generate and storemedication information. The server 104 may be configured tocommunicatively connect with and transfer medication information betweenwith respect to any of dispensing device 102 and assemblies 140, 150a-d, 160, and/or 170, network 118, and database 122. Server 104 may bein continuous or periodic communication with dispensing device 102,assemblies 140-170, network 118, and/or database 122. Server 104 mayinclude a local, remote, or cloud-based server or a combination thereofand may be in communication with and provide medication information(e.g., as part of memory 108 or database 122) to any of dispensingdevice 102, assemblies 102-170, network 118, and/or database 122. Theserver 104 may further provide a web-based user interface (e.g., aninternet portal) to be displayed by display 112. The server 104 maycommunicate the medication information with dispensing device 102,assemblies 140-170, network 118, and/or database 122 using anotification. In addition, server 104 may be configured to storemedication information as part of memory 108 or database 122. Server 104may include a single or a plurality of centrally or geographicallydistributed servers 104. Server 104 may be configured to store andcoordinate medication information with any portion of the systemsherein.

The system 100 may include an overall network infrastructure throughwhich the dispensing device 102, assemblies 140-170, server 104, anddatabase 122 may communicate, for example, to transfer medicationinformation between each other, e.g., using connections 124. In general,a network (e.g., system 100 or network 118) may be a collection ofcomputing devices and other hardware to provide connections and carrycommunications. As an example, each device may communicate with everyother device through the use of a wired or wireless network or acombination thereof, e.g., using any wired or wireless connectionincluding direct wiring, Ethernet wiring, radio frequency (RF), cellularphone service, GPS, Bluetooth, infrared (IR) signals, or any otherconnection.

The connections 124 may be any wired or wireless connections between twoor more endpoints (e.g., devices or systems), for example, to facilitatetransfer of medication information. Connections 124 may include a localarea network (LAN) connection, for example, to communicatively connectthe devices/assemblies 102-170, server 104, and database 122 withnetwork 118. Connections 124 may include a wide area network (WAN)connection, for example, to communicatively connect server 104 withnetwork 118. Connections 124 may include a radiofrequency (RF), nearfield communication (NFC), Bluetooth®, Wi-Fi, or a wired connection, forexample, to communicatively connect assemblies 102-170.

Referring to FIG. 2, dispenser or dispensing device 102 of FIG. 1 isshown. Dispenser 102 includes a display 200, an input device 202, aloading door or medicine container loading station door (MCLSD) 204, astorage container or medicine storage container (MSC) 206, and a loadingstation or medicine container loading station (MCLS) 208. Display 200may be used to present, illustrate or display medication informationincluding, for example, instructions for operation of dispenser 102. Themedication information, e.g., on display 200, may include instructionsto prepare one or more storage containers 206 having a medical dose fora patient or user. Medicine container loading station 208 may rotatemedicine storage container 206 on a carousel so that a machine visionsystem or a scanner 220, for instance, to take images (e.g., 360 degreepictures) of medicine storage container 206 to read information from alabel on MSC 206. MSC 206 may be operated automatically or manually, maybe operated by user inputs to display 200 or a button on a face 210 ofdispenser 100, or may be operated via input device 202. Machine visionsystem 220 may be positioned to view within MCLSD 204 so that a positionof MSC 206 and other storage devices therein may be determined.

FIG. 3 is a perspective view of an exemplary sub-assembly 300illustrating the disclosed system or dispenser. Sub-assembly 300 is aview of inside elements of dispenser 102 and includes a carousel 310.Sub-assembly 300 includes a loading station or MCLS 325, a firsttransfer device or first medicine container transfer unit (MCTU) 330,and a storage device or medicine container storage nest (MCSN) 335. Aloading point or medicine container loading point (MCLP) 340 may beproximate a second transfer device or second medicine container transferunit (MCTU) 345. A first medicine discharge point (MDP) 350 includes,for example, a medicine transfer unit (MTU) 355 that may include a rampor conveyor for transporting or otherwise conveying medicine frommedicine container transfer unit 345 to a second medicine dischargepoint (MDP) 380. MTU 355 may include one or more devices for measuring aweight or amount of medicine positioned thereon, as will be furtherdescribed in further examples. Sub-assembly 300 includes a weightchecking station (WCS) 360, dispensed medicine container (DMC) 365,medicine transfer containers (MTC) 370 and 375. Weight checking station360 may determine an amount of weight contained thereon. Sub-assembly300 includes a calibration and verification device 382 to automaticallycalibrate weight detecting devices. The calibration and verificationdevice 382 may include, but is not limited to, a calibrator, andmultiple calibration weights with different masses.

The system may include and utilize one or a plurality of dispensedmedicine containers (DMC). For example, a first medicine container mayhave a final or prescribed dosage for patient to take and a secondmedicine container may be for system to use to transfer medicine.Medicine transfer unit (MTU), medicine transfer container (MTC),dispensed medicine container (DMC), and medicine storage containers(MSC) may or may not be separated physical devices. The medicinecontainers may have any shape, size, and may differ from thoseillustrated. One device or container may have multiple functions. TheMedicine Storage Container (MSC) may include an original or standardcontainer received with medicine from pharmacies, hospitals, etc., themedicine storage container may be integrated with or provided with thesystem, or may be a combination thereof. The medicine transfer unit(MTU) may have different forms and designs, may be a chute, a containerof any shape, a plate, a conveyor, a moving surface, a robot, a subassembly (machine), although examples of the medicine transfer unit areshown in examples as a linear conveyor and a rotating disc. A medicinequantity sensing unit may include visual sensors, or any monitoringdevice that may count or otherwise determine a quantity of medicine, andmay include scales, load cells, sensors, images, and other means. Themedicine container transfer unit (MCTU) moves the medicine containers.The devices herein may have many different forms and designs, includinga conveyor, a carousel, a robot, a walking beam, a dial table, a rotarytable, a sub assembly (machine). The systems herein may have multiplelayers (such as additional medical transfer units (MTUs), and may havemultiple carousels.

In addition, in one example, containers used are original containersreceived from, for instance, a pharmacy with the medicine. However, thesystem may have its own containers and the system transfers medicinesfrom the original containers to the system containers. As such, thesystem may keep original containers. The disclosed system can transfermedicines back from system containers to original containers if needed,e.g., switch to a different medicine because of, for instance, anyallergy to a medicine.

The disclosed system may have a cleaning device to clean the surfacesafter each dispensing cycle for those surfaces contacted with medicineduring the disclosed dispensing processes.

During operation a user may attach medicine container identificationunit 385 to original medicine container 390, and together they formmedicine storage container 320. Medicine container identification unit385 may be a physical device, a RF tag, a near field communication (NFC)device, a bar code, a sensor, and the like. Medicine container storagenest 335 is able to communicate wirelessly with medicine containeridentification unit 385 and can both read and write information.Medicine container storage nest 335 is also able to communicate with thecontrol unit of the dispenser 100, and medicine container storage nest335 may have, for instance, memory 108.

Referring back to FIG. 3, medicine storage container 320, or originalmedicine container 390, either of which may have medicine provided fromfor instance a pharmacy, may be loaded into dispenser 102 from medicinecontainer loading station 325, and medicine storage container 320 istransferred to medicine container loading point 340 by medicinecontainer transfer unit 330. Medicine storage container 320 may includemedicine in the form of a pill or a capsule, as examples, and a dose ofmedicine for a user may include one or more of the pills or capsules.Medicine container transfer unit 330 is illustrated as having carousel310, but may instead include a conveyor, a robot, or any device that canmove medicine storage container 320 from one position to another, anddischarge medicine from medicine storage container 320.

Medicine transfer unit 355 moves medicine from one position to another,accepts medicine from medicine storage container 320, and medicinetransfer unit 355 also discharges medicine into medicine storagecontainer 320 or any container when positioned at medicine dischargepoint 380. Medicine transfer unit 355 may have a linear moving surfacesuch as a walking beam, a conveyor, or a rotating surface such as arotating disc or other shape.

In operation, dispenser 102 moves, via carousel 310, medicine storagecontainer 320 to a loading point 312, and loading point 312 is proximatemedicine container transfer unit 345. Medicine container transfer unit345 engages with medicine storage container 320 by attaching thereto,and moving medicine storage container 320 to first medicine dischargepoint 350. Medicine storage container 320 is, in one example, a medicinestorage container which may have an amount of medicine that is in excessof a dose, or an amount of medicine that is desired to be distributedinto dispensed medicine container 365. Medicine container transfer unit345 turns medicine storage container 320 such that at least apredetermined amount of medicine spills or otherwise pours from medicinestorage container 320 onto medicine transfer unit 355. Carousel 310 mayrotate to move medicine transfer container 370 to second medicinedischarge point 380. When medicine transfer container 370 is positionedat medicine discharge point 380, and when medicine has been dischargedonto medicine transfer unit 355, medicine transfer unit 355 therebyconveys the discharged medicine from medicine transfer unit 355 intomedicine transfer container 370 until at least a second predeterminedamount of medicine is contained in medicine transfer container 370, asdetermined by weight determining device 395 and medicine containerstorage nest 335, which weigh and transmit weight information to forinstance a controller of dispenser 102. Other methods may be used todetermine amount of medicine is contained in medicine transfer container370, e.g. sensor, and image.

Medicine is transferred from medicine transfer unit 355 into medicinetransfer container 370, and a weight of the medicine is determined viaweight determining device 395. If the measured weight is less than agiven or desired dose, and if medicine is still on medicine transferunit 355 (i.e., has not been fully discharged), then medicine transferunit 355 further conveys more medicine into medicine transfer container370. On the other hand, if no medicine is on medicine transfer unit 355,then additional medicine is discharged to medicine transfer unit 355from medicine storage container 320. The process of discharging frommedicine storage container 320 to medicine transfer unit 355, and frommedicine transfer unit 355 to medicine transfer container 370 continuesuntil at least a dose of medicine is contained in medicine transfercontainer 370. That is, medicine transfer container 370 may include anexact or desired dose, or may include an amount of medicine that is inexcess of an exact dose.

If an exact dose is present in medicine transfer container 370, thendispenser 102 operates to convey medicine transfer container 370 tofirst medicine discharge point 350 via medicine container transfer unit345, any remaining medicine on medicine transfer unit 355 is dischargedback into medicine storage container 320 at second medicine dischargepoint 380, and the medicine in medicine transfer container 370 isdischarged into dispensed medicine container 365 that is positioned atsecond medicine discharge point 380.

On the other hand, in one example medicine transfer container 370 mayinclude an amount of medicine that is in excess of an exact dose. Insuch an example, medicine transfer container 370 is thereby conveyed tofirst medicine discharge point 350 and operations described above arerepeated. That is, medicine container transfer unit 345 dischargesmedicine from medicine transfer container 370 onto medicine transferunit 355, and medicine transfer container 375 is conveyed via carousel310 to second medicine discharge point 380. Medicine discharged frommedicine transfer container 370 to medicine transfer unit 355 is therebyconveyed to medicine transfer container 375 until at least the exactdose is present in medicine transfer container 375. And, again, ifmedicine transfer container 375 includes medicine equal to the dose,then the medicine in medicine transfer container 375 is discharged intodispensed medicine container 365, and any excess medicine on medicinetransfer unit 355 is returned to medicine storage container 320.

The aforementioned steps continue until a dose of medicine is containedwithin dispensed medicine container 365, and any additional medicine isreturned to medicine storage container 320. In such fashion, dispenser102 includes a feedback mechanism, ensuring a proper dose, and only aproper dose, is contained in dispensed medicine container 365. That is,feedback is provided in the form of a weight of pills or capsules,corresponding to a dose, measured via weight detecting device 395. Thefeedback may also be provided in other forms, e.g. pill numbersdetermined by sensors, or images. Dispenser 102 is caused to operateusing such feedback to ensure that a correct dose is provided indispensed medicine container 365.

Referring now to FIG. 5, a schematic diagram of a system 500 of theinteraction between system 100, users 502-508, and databases 510-516.The users may include, but are not limited to, family member(s) 502,caregiver(s) 504, doctor(s) 506, and other(s) 508. The databases mayinclude, but are not limited to, cloud storage 510, hospital(s) 512,e.g., hospital servers or databases, remote server(s) 514, which mayinclude, but is not limited to, server 104, National Drug Code (NDC)database(s), and the like, and pharmacy(ies) 516. Information may beretrieved from, stored on, and/or accessed by the databases 510-516.

System 500 may include system 100, including a hardware structure of thedispensing unit 102. The hardware structure may include control unit orprocessor 106, memory 108, display 112, I/O device(s) 114, communicationdevice 116, and a power device 118. The processor 106 may be any type ofgeneral or specific purpose processor, including, but not limited to, acontroller. The power device 118 may be configured to either AC and orDC power, such as a lithium ion battery system. If the system 100 usesrechargeable batteries, the power source may monitor the power remainingand give reminder signals to recharge batteries once the batteries arelow. The memory 108 may store medication information includingprescription information, medicine container identification informationand patient's medical history information. The I/O device 114 mayinclude, but is not limited to, an RF reader, one or more cameras,scanner, barcode reader (e.g., 1d or 2d), one or more lights, one ormore sensors, one or more speakers, one or more buttons, keyboard,mouse, touch screen, microphone, one or more scales, or a combinationthereof.

The communication device 116 may communicatively connect the devices ofsystem 100 or 500, for example, using any type of wired or wirelessnetwork connection. The communication device 116 may include a singletransceiver or a combination of transmitters and receivers. The wirelessnetwork may utilize a wireless transmitter (e.g., cellular,radiofrequency (RF) or Wi-Fi transmitter) of the communication device116. The communication device 116 may be configured to communicativelyconnect the dispensing unit 102 with any or all of assemblies 140-170,server 104, and network 118. The communication device 116 may be usedfor digital or analog signal transfers. For instance, the communicationdevice 116 may include any antenna technology including cellular, V2Vcommunication, radiofrequency (RF), near field communication (NFC),Bluetooth®, Wi-Fi, or the like. The communication device 116 may includeany technology that implements a wireless exchange of occupantinformation by converting propagating electromagnetic waves to and fromconducted electrical signals. The communication device 116 may includeany technology that is used to exchange medication informationwirelessly using radio waves over a radio range or network that enablescommunication.

Any portion of system 100 or 500, e.g., the dispensing unit 102,assemblies 140-170, server 104, and databases 510-516, may include acomputing system and/or device that includes a processor 106, memory 108and connection 124. Computing systems and/or devices generally includecomputer-executable instructions, where the instructions may beexecutable by one or more devices such as those listed below.Computer-executable instructions may be compiled or interpreted fromcomputer programs created using a variety of programming languagesand/or technologies, including, without limitation, and either alone orin combination, Java™, C, C++, Visual Basic, Java Script, Perl, SQL,PL/SQL, Shell Scripts, etc. The system 100, e.g., assemblies 102-170 andserver 104 may take many different forms and include multiple and/oralternate components and facilities, as illustrated in the Figuresfurther described below. While exemplary systems, devices, andsub-devices are shown in the Figures, the exemplary componentsillustrated in the Figures are not intended to be limiting. Indeed,additional or alternative components and/or implementations may be used,and thus the above communication operation examples should not beconstrued as limiting.

In general, computing systems and/or devices (e.g., dispensing unit,assemblies 140-170, server 104, databases 512-516) may employ any of anumber of computer operating systems, including, but by no means limitedto, versions and/or varieties of the Microsoft Windows® operatingsystem, the Unix operating system (e.g., the Solaris® operating systemdistributed by Oracle Corporation of Redwood Shores, Calif.), the AIXUNIX operating system distributed by International Business Machines ofArmonk, N.Y., the Linux operating system, the Mac OS X and iOS operatingsystems distributed by Apple Inc. of Cupertino, Calif., the BlackBerryOS distributed by Research In Motion of Waterloo, Canada, and theAndroid operating system developed by the Open Handset Alliance.Examples of computing systems and/or devices such as device 103 andserver 104 may include, without limitation, mobile devices, cellularphones, smart-phones, super-phones, tablet computers, next generationportable devices, mobile printers, handheld computers, notebooks,laptops, secure voice communication equipment, networking hardware,computer workstations, or any other computing system and/or device.

Further, processor 106 may include a microprocessor. Processor 106 mayreceive instructions from memories such as memory 108, database 122, orcloud storage 510 and execute the instructions, thereby performing oneor more operations or processes including those described herein. Suchinstructions and other medication information may be stored andtransmitted using a variety of computer-readable mediums (e.g., memory108, database 122, or cloud storage 510). Processors such as processor106 may include any computer hardware or combination of computerhardware that is configured to accomplish the purpose of the devices,systems, and processes described herein. For example, the processor 106may be any one of, but not limited to single, dual, triple, or quad coremicroprocessors (on one single chip), graphics processing devices,visual processing devices, and virtual processors.

Memories such as memory 108 or database 122 may include, in general, anycomputer-readable medium (also referred to as a processor-readablemedium) that may include any non-transitory (e.g., tangible) medium thatparticipates in providing medication information or instructions thatmay be read by a computer (e.g., by the processors 106 of the assemblies102-170 and server 104). Such a medium may take many forms, including,but not limited to, non-volatile media and volatile media. Non-volatilemedia may include, for example, optical or magnetic disks and otherpersistent memory. Volatile media may include, for example, dynamicrandom access memory (DRAM), which typically constitutes a main memory.Such instructions may be transmitted by one or more transmission media,including radio waves, metal wire, fiber optics, and the like, includingthe wires that comprise a system bus coupled to a processor of acomputer. Common forms of computer-readable media include, for example,a floppy disk, a flexible disk, hard disk, magnetic tape, any othermagnetic medium, a CD-ROM, DVD, any other optical medium, punch cards,paper tape, any other physical medium with patterns of holes, a RAM, aPROM, an EPROM, a FLASH-EEPROM, any other memory chip or cartridge, orany other medium from which a computer can read.

Further, databases, data repositories or other medication informationstores (e.g., memory 108, database 122, or cloud storage 510) describedherein may generally include various kinds of mechanisms for storing,providing, accessing, and retrieving various kinds of medicationinformation, including a hierarchical database, a set of files in a filesystem, an application database in a proprietary format, a relationaldatabase management system (RDBMS), etc. Each such medicationinformation store may generally be included within (e.g., memory 108) orexternal (e.g., database 122 or cloud storage 510) to a computing systemand/or device (e.g., dispensing unit 102, assemblies 140-170, server104, or databases 512-516) employing a computer operating system such asone of those mentioned above, and/or accessed via a network (e.g.,system 100 or 500, or network 118) or connection in any one or more of avariety of manners. A file system may be accessible from a computeroperating system, and may include files stored in various formats. AnRDBMS generally employs the Structured Query Language (SQL) in additionto a language for creating, storing, editing, and executing storedprocedures, such as the PL/SQL language mentioned above. Memory 108 anddatabase 122 may be connected to or part of any portion of system 100.

Referring now to FIG. 6, a flow diagram of an exemplary process 600 forsetting up the system 100 is illustrated. Process 600 may includeoperations that may be part of program 110 stored on memory 108, and/orexecuted by processor 106. Process 600 may take many different forms andinclude multiple and/or alternate steps. While an exemplary process isshown, the exemplary steps illustrated are not intended to be limiting.Indeed, additional or alternative steps and/or implementations may beused.

Process 600 may begin at block 602 at which a medicine containeridentification unit 385 is added to an original medicine container 390.The combination of the medicine container identification unit 385 andthe medicine container 390 collectively form the medicine storagecontainer 320. Alternatively, process 600 may implement the originalmedicine container 390 without the medicine container identificationunit 385.

At block 604, prescription information associated with the patient maybe inputted into the device 100. The information may include, but is notlimited to, the patient's name, name of the drug, strength of the drug,direction for use, including, but not limited to, a schedule and/orquantity to take, quantity in the medicine container 390, and the like.The information may be inputted via different methods and/ortechnologies, as illustrated in FIG. 7 and described below.

At block 606, the processor 106 may prompt the user to place themedicine storage container 320 into the loading station 325. The promptmay be verbal, for example, via speaker(s) of the I/O device(s) 114,and/or visual, for example, via the display 112. The user may then placethe medicine storage container 320 into the loading station 325.

At block 608, the loading station door 204 may close. This may be doneautomatically, for example, but not intended to be limiting, after a setamount of time has passed after the prompt to place the medicine storagecontainer 320 into the loading station 325, or upon sensing that themedicine storage container 320 has been placed into the loading station325. Alternatively, the loading station door 204 may be manually closedby the user, for example, but not intended to be limiting, sliding thedoor closed or pressing a button designated for closing and/or openingthe door.

At block 610, medicine container information may be inputted. Theinformation may include, but is not limited to, the patient's name, nameof the drug, strength of the drug, direction for use, including, but notlimited to, a schedule and/or quantity to take, quantity in the medicinecontainer 390, and NDC information for the medicine/drug. Theinformation may be inputted via different methods and/or technologies,as illustrated in FIG. 8 and described below.

At block 612, the processor 106 may determine if the prescription andthe medicine storage container 320 match, for example, by comparing theprescription information and the medicine container information. If theydo not match, process 600 may proceed to block 614 at which theprocessor 106 may prompt the user if the medicine storage container 320is correct.

If the medicine storage container 320 is correct, process 600 mayproceed to block 616 at which the processor 106 may provide a warningmessage, verbally and/or visually, for example, of the discrepancybetween the prescription and the medicine storage container 320, afterwhich process 600 may end.

If the medicine storage container 320 is not correct, process 600 mayproceed to block 618 at which the processor 106 may prompt the user totake the correct medicine storage container 320, which includes thecorrect medicine container 390, and place it into the loading station325 after removing the incorrect medicine storage container 320. Process600 may then proceed back to block 608 at which the loading station door204 may be closed. Blocks 610 and 612 may be repeated, or alternatively,process 600 may end after the repeating of block 608.

Referring back to block 612, if the prescription and the medicinestorage container 320 do match, then process 600 may proceed to block620 at which a first medicine container transfer unit 330 of thedispensing unit 102 may transfer the medicine storage container 320 to astorage location.

At block 622, the processor 106 may remember the containeridentification and the storage location of the medicine storagecontainer 320, for example, by storing the information in the memory108.

At block 624, the processor 106 may determine if all medicine storagecontainers 320 and/or medicine containers 390 for the prescription arefinished. This may be determined from the prescription informationobtained at block 608. In addition or alternatively, the processor 106may prompt the user, verbally and/or visually, if all medicine storagecontainers 320 for the prescription are finished, to which the user mayrespond tactilely and/or verbally. If the answer is no, process 600 mayproceed back to 606 at which the processor 106 may prompt the user toplace the next medicine storage container 320 into the loading station325, after which the subsequent blocks of process 600 may be repeated.

If all the containers are finished for the prescription, process 600 mayproceed to block 626 at which the processor 106 may prompt the user,verbally and/or visually, if there are any more prescriptions, to whichthe user may respond tactilely and/or verbally. If there are moreprescriptions, process 600 may proceed back to block 604 at which theprescription information for the new prescription may be inputted intothe device 100, after which the subsequent blocks of process 600 may berepeated.

If there are no more prescriptions, process 600 may proceed to block 628at which the control unit processor may update the prescription(s) intothe patient's account, which, again, may be stored locally in the memory108 and/or remotely at any one of the databases 510-516.

At block 630, the processor 106 may retrieve weight for each pill orcapsule from databases 510-516. Alternatively, the processor 106 may rundispenser unit to calculate the weight. The processor 106 may also checkthe weight of the medicine in a container to verify the medicine in thecontainer is correct. At block 632, the processor 106 may run cleaninglogic to clean surfaces contact with medicine according predeterminedschedules or as required. At block 634, the processor 106 may runcalibration and verification logic to calibrate or verify weightdetecting devices according to predetermined schedules as required. Atblock 636, the processor 106 may run vision system logic to take imagesof a medicine and compare them to the image retrieve from databases510-516 to verify medicine in the container is correct.

At blocks 638-642, any one of the assemblies 140, 150 a-d, 160, and 170and the dispensing unit 102 may now operate according to any one of theprocesses described in U.S. patent application Ser. Nos. 15/613,675 and15/613,852 and further below with respect to FIGS. 8-10, 12, 14, 16, 18,and 20.

At block 644, the processor 106 runs dispenser logic as described hereinAfter block 644, the process may repeat or end.

Referring now to FIG. 7, a flow diagram of an exemplary process 700 forinputting prescription information is illustrated. Process 700 mayinclude operations that may be part of program 110, stored on memory108, and/or executed by processor 106, Process 700 may take manydifferent forms and include multiple and/or alternate steps. While anexemplary process is shown, the exemplary steps illustrated are notintended to be limiting. Indeed, additional or alternative steps and/orimplementations may be used.

Process 700 may begin at block 702 at which the user may choose at leastone input mode 704-714 based at least on the I/O device(s) 114incorporated in the dispensing unit 102.

Input mode 704 may include obtaining the prescription information viaOCR, for example, but not intended to be limiting, where the I/Odevice(s) 114 includes a machine vision system (e.g., at least onecamera) and/or a scanner. As merely one exemplary approach, at block 704a, the processor 106 may prompt a user to present the prescription,which may include the prescription information, to the camera(s) orscanner. The prompt may include any auditory and/or visual indicator(s),for example, on the display 112, the indicator(s) including, but notlimited to, specific text instructions to present the prescription, textthat the camera(s) or scanner are ready, lights, sounds, and the like.At block 704 b, the user may present the prescription to the camera(s)or scanner. This may include, but is not limited to, placing theprescription in front of or inside of the camera(s) or scanner, feedingthe prescription into the camera(s) or scanner, and the like. At block704 c, the camera(s) or scanner may take pictures of or scan theprescription, and the I/O device(s) 114 may read the text of the pictureor scanned image of the prescription via an OCR device. In addition oralternatively, the I/O device(s) 114 may transmit the picture(s) orscanned image to the processor 106, which may in turn read the text viaan OCR device.

Input mode 706 may include obtaining the prescription information from anetwork, either local or remote. At block 706 a, the user may log in toan account, which may be associated with the patient and may include theprescription information, via an input device of the I/O device(s) 114,including, but not limited to, a keyboard, a keypad, a touch screen, amicrophone, a fingerprint scanner, an eye scanner, a facial recognitioncamera, and the like. The patient log in information and/or theprescription regiment data may be stored locally on the memory 108and/or remotely, including, but not limited to, any one of the databases510-516. At block 706 b, the processor 106 may retrieve the prescriptioninformation from the account.

Input mode 708 may include obtaining the prescription information via abarcode reader or scanner of the I/O device(s) 114. At block 708 a, thebarcode reader/scanner may scan a barcode of the prescription.

Input mode 710 may include obtaining the prescription information via anRF reader of the I/O device(s) 114. At block 710 a, the RF reader mayread an RF tag of the prescription.

Input modes 712 and 714 may include obtaining the prescriptioninformation via direct input from the user, for example, tactilely orverbally. With respect to input mode 712, the user may input theprescription information via a keyboard of the I/O device(s) 114, whichmay be a standalone keyboard or a touch screen keyboard incorporated inthe display 112, as illustrated in block 712 a. With respect to inputmode 714, the user may read the prescription via a microphone of the I/Odevice(s) 114, as illustrated in block 714 a.

At block 716, the processor 106 may present the prescription informationback to the user verbally and/or visually. For example, the processor106 may read the prescription information via speaker(s) of the I/Odevice(s) 114 and/or display the prescription information on the display112. The user may then verify the information tactilely, for example,via a keyboard of the I/O device(s) 114, which, again, may be astandalone keyboard or a touch screen keyboard, and/or verbally, forexample, via a microphone of the I/O device(s) 114.

At block 718, the processor 106 may determine if the medicine is new forthe patient. This may be determined by prompting the user, which, again,may be verbally via speaker(s) of the I/O device(s) 114, or visually onthe display 112. In addition or alternatively, the processor 106 maycompare the name of the medicine with a list of prior and/or currentmedicines stored in the patient's account.

If the medicine is not new, process 700 may proceed to block 720 atwhich the processor 106 may determine if the schedule included with theprescription information is new. This, again, may be determined byprompting the user and/or comparing the schedule to an existing schedulestored in the patient's account. If the schedule is not new, process 700may end. If the schedule is new, process 700 may proceed to block 722 atwhich the processor 106 may warn the user of the schedule change, andblock 724 at which the user may acknowledge the change, after whichprocess 700 may end.

If the medicine is new, process 700 may proceed to blocks 726 and 728 atwhich the processor 106 may check whether the prescription informationis consistent with the NDC database(s) and/or the patient's records, anddetermine if there are any conflicts. If there are no conflicts, thenprocess 700 may end. If there are conflicts, process 700 may proceed toblocks 730 and 732 at which the processor 106 may provide a warningmessage, verbally and/or visually, and the user may acknowledge thewarning, tactilely or verbally, after which process 700 may repeat orend.

Referring now to FIG. 8, a flow diagram of an exemplary process 800 forinputting the medicine container information is illustrated. Process 800may include operations that may be part of program 110, stored on memory108, and/or executed by processor 106. Process 800 may take manydifferent forms and include multiple and/or alternate steps. While anexemplary process is shown, the exemplary steps illustrated are notintended to be limiting. Indeed, additional or alternative steps and/orimplementations may be used.

Process 800 may begin at block 802 at which the user may choose at leastone input mode 804-814 based at least on the I/O device(s) 114. Inputmodes 804-814 may be similar to input modes 704-714 described above.

Input mode 804 may include obtaining the medicine container informationvia OCR, for example, but not intended to be limiting, where the I/Odevice(s) 114 includes a machine vision system (e.g., at least onecamera) and/or a scanner, which may be the same or different from thecamera(s) or scanner used in input mode 704. At block 804 a, thecamera(s) or scanner may take pictures of or scan the medicine container390, e.g., a label on the medicine container 390. The I/O device(s) 114may then read the text of the picture or scanned image of the medicinestorage container 320 via an OCR device to retrieve the medicinecontainer information, including, but not limited to, the container ID.In addition or alternatively, the I/O device(s) 114 may transmit thepicture(s) or scanned image to the processor 106, which may in turn readthe text via an OCR device.

Input mode 806 may include obtaining the medicine container informationfrom a network, either local or remote. At block 806 a, the processor106 may retrieve an ID of the container. At block 806 b, the user maylog in to an account that may have access to certain databases thatinclude the medicine container information, and that may be storedlocally, for example, on the memory 108, and/or remotely, including, butnot limited to, any one of the databases 510-516. The log in informationmay be input by the user via an input device of the I/O device(s) 114,including, but not limited to, a keyboard, a keypad, a touch screen, amicrophone, a fingerprint scanner, an eye scanner, a facial recognitioncamera, and the like. After logging in, the processor 106 may thenretrieve the medicine container information from the database(s) onwhich it is stored.

Input mode 808 may include obtaining the medicine container informationvia a barcode reader or scanner of the I/O device(s) 114. At block 808a, the barcode reader/scanner may scan a barcode of the medicine storagecontainer 320 to retrieve the container information, including, but notlimited to, the container ID.

Input mode 810 may include obtaining the medicine container informationvia a RF reader of the I/O device(s) 114. At block 810 a, the RF readermay read an RF tag on the medicine storage container 320 to retrieve thecontainer information, including, but not limited to, the container ID.

Input modes 812 and 814 may include obtaining the medicine containerinformation, including, but not limited to, the container ID, via directinput from the user, for example, tactilely or verbally. With respect toinput mode 812, the user may input the medicine container informationvia a keyboard of the I/O device(s) 114, which may be a standalonekeyboard or a touch screen keyboard, as illustrated in block 812 a. Withrespect to input mode 814, the user may read the prescription via amicrophone of the I/O device(s) 114, as illustrated in block 814 a.

At block 816, the processor 106 may present the medicine containerinformation to the user verbally and/or visually for confirmation of itsaccuracy. For example, the processor 106 may read the medicine containerinformation via speaker(s) of the I/O device(s) 114 and/or the display112 may display the data. The user may then verify the informationtactilely, for example, via a keyboard of the I/O device(s) 114, which,again, may be a standalone keyboard or a touch screen keyboard, and/orverbally, for example, via a microphone of the I/O device(s) 114.

At block 818, the user may determine whether or not there are any errorsin the medicine container information. If there are no errors, process800 may proceed to block 820 at which the user may confirm the accuracyof the medicine container information verbally, for example, via amicrophone of the I/O device(s) 114 and/or tactilely, for example, via akeyboard and/or button(s). If there are any errors, process 800 mayproceed to blocks 822 and 824 at which the processor 106 may provide awarning message, verbally and/or visually, and the user may acknowledgethe warning, tactilely or verbally.

At block 826, the processor 106 may store the medicine containerinformation, for example, locally in the memory device 106, after whichprocess 800 may end.

At block 828, the processor 106 monitors presentation of the medicinecontainer. If it was removed from the unit, the system will give warningsignal.

After block 828, the process may repeat or end.

Referring now to FIGS. 9A and 9B, a flow diagram of an exemplary process900 is illustrated. Process 900 may be for operating the dispensing unit102, e.g., moving a dose (or other predetermined amount) of medicine toa storage container. Process 900 may include operations that may be partof program 110, stored on memory 108 or database 122, and/or executed byprocessor 106. Process 900 may take many different forms and includemultiple and/or alternate steps. While an exemplary process is shown,the exemplary steps illustrated are not intended to be limiting. Indeed,additional or alternative steps and/or implementations may be used. Inaddition, process 900 may be applicable, in whole or in part, to each ofprocesses 1000, 1200, 1400, 1600, 1800, 2000, and 2200 and the specificembodiments of the dispensing unit 102 incorporated therein, asdescribed in more detail hereinafter.

At block 902, processor 106, e.g., by way of first medicine containertransfer unit 330, may move the medicine storage container 320 from aninitial position, e.g., the storage position, to the medicine containerloading point 340, which may be stored on and received from memory 108or database 122. The moving of the medicine storage container 320 may beperformed by the first medicine container transfer unit 330, and maygenerally be in a circumferential direction, as illustrated in FIG. 3.However, it should be appreciated that the medicine storage container320 may be moved to the loading point 340 in any linear or non-lineardirection.

At block 904, the processor 106 may move, e.g., by way of the secondmedicine container transfer unit 345, the medicine storage container 320from the loading point 340 to a first discharge point 350, which may bestored on and received from memory 108 or database 122. The moving ofthe medicine storage container 320 may generally be in a verticaldirection such that it may be elevated above the medicine transfer unit355.

At block 906, the processor 106 may move, e.g., by way of the firstmedicine container transfer unit 330, a first medicine transfercontainer, which may be either medicine transfer container 370 or 375from an initial position to a second discharge point 380, which, asexplained above, may be located at an end of the medicine transfer unit355 to receive the medicine. The moving of the first medicine transfercontainer 370, 375 generally may be in a circumferential direction, asillustrated in FIG. 3. However, it should be appreciated that the firstmedicine transfer container 370, 375 may be moved to the seconddischarge point 380 in a linear direction.

At block 908, the processor 106 may discharge, e.g., by way of thesecond medicine container transfer unit 345, at least a firstpredetermined amount of medicine from the medicine storage container 320onto the medicine transfer unit 355. The predetermined amount may changeduring the dispensing process. It should be appreciated that theprocessor 106 may discharge the medicine from the medicine storagecontainer 320 via any known mechanism or device, which may rotate, tilt,or otherwise move the medicine storage container 320.

At block 910, the processor 106 may discharge, e.g., by way of themedicine transfer unit 355, at least a second predetermined amount ofthe medicine on the medicine transfer unit 355 therefrom into themedicine transfer container 370, 375. The second predetermined amountmay or may not be the same as the first predetermined amount, and maychange during the dispensing process.

At block 912, the dispensing unit 102, by way of the processor 106, maydetermine if the medicine in the first medicine transfer container 370,375 is equal to the required dosage, as determined and stored in thememory 108 in process 600. If the medicine does equal the requireddosage, then process 900 may proceed to blocks 914 and 916. If not, thenprocess 900 may proceed to block 918.

At block 914, the processor 106 may move, e.g., by way of the firstmedicine container transfer unit 355, the medicine in the first medicinetransfer container 370, 375, which is in the required dosage amount, tothe dispensed medicine container 365 at the second discharge point 380.At block 916, the processor 106 may move, e.g., via the medicinetransfer unit 355, all the remaining medicine on the medicine transferunit 355 and/or the first medicine transfer container 370, 375 back tothe medicine storage container 320 by various rearranging of thedispensed medicine container 365 and medicine storage container 320 fromand to the second medicine discharge point 380. Process 900 may endafter block 916.

At block 918, the dispensing unit 102, for example, the processor 106,may determine if the medicine on the medicine transfer unit 355 is equalto the required dosage. If the medicine does equal the required dosage,then process 900 may proceed to blocks 914 and 916 described above. Ifnot, then process 900 may proceed to block 920.

At block 920, the dispensing unit 102, for example, the processor 106,may determine if the medicine in the first medicine transfer container370, 375 is less than the required dosage. If it is less, then process900 may proceed to block 922 at which the dispensing unit (e.g., theprocessor 106) may determine if there is still medicine on the medicinetransfer unit 355. If there is not, process 900 may go back to block908. If there is, process 900 may go back to block 910.

If the medicine in the first medicine transfer container 370, 375 is notless than the required dosage, as may be determined at block 920,process 900 may proceed to blocks 924 and 926 at which the processor 106may move the medicine storage container 320 to the second dischargepoint 380, and the first medicine transfer container 370, 375 to thefirst discharge point 350. Blocks 924 and 926 may occur simultaneouslyor one after the other.

At block 928, the processor 106 may discharge any remaining medicine onthe medicine transfer unit 355 into the medicine storage container 320.

At block 930, the processor 106 may move a second medicine transfercontainer, which may be the other of medicine transfer containers 370and 375, to the second discharge point 380.

After block 930, process 900 may go back to block 908, where the firstmedicine transfer container 370, 375 may act as the medicine storagecontainer 320, and the second medicine transfer container 370, 375 mayact as the first medicine transfer container 370, 375. Accordingly,medicine may be discharged from the first medicine transfer container370, 375 to the second medicine transfer container 370, 375, andmedicine storage container 320.

Process 900 may be iterated until the medicine in the dispensed medicinecontainer 365 equals the required dosage, as described below.

In general, the processes herein (e.g., process 900) may involvedifferent combinations of medicine in one or two units. The combinationsmay include, but are not limited to, the first medicine transfercontainer 370, 375 alone, the second medicine transfer container 370,375 alone, the medicine transfer unit 355 alone, the first and secondmedicine transfer containers 370, 375, the first medicine transfercontainer 370, 375 and the medicine transfer unit 355, and the secondmedicine transfer container 370,375 and the medicine transfer unit 355.Those combinations may change for every iteration. The process 900determines the most optimal way to dispense for every iteration.

As described in more detail with respect to processes 1000, 1200, 1400,1600, 1800, 2000, and 2200, the processor 106 may communicate with,i.e., send commands to, receive data from, and the like, to variouscomponents of the dispensing unit 102 and/or system 500 to perform thedifferent steps of process 900. In addition or alternatively, thevarious components may communicate directly with each other.

Referring now to FIG. 10, a flow diagram of another exemplary process1000 for operating the dispensing unit 102 is illustrated, which mayincorporate the sub-assembly 300. Process 1000 may include operationsthat may be part of program 110, stored on memory 108, and/or executedby processor 106. Process 1000 may take many different forms and includemultiple and/or alternate steps. While an exemplary process is shown,the exemplary steps illustrated are not intended to be limiting. Indeed,additional or alternative steps and/or implementations may be used.

Process 1000 may begin at step 1002 at which the first medicinecontainer transfer unit 330 may transfer the medicine storage container320 from its storage location, e.g., the loading station 325, to themedicine container loading point 340 for the second container medicinetransfer unit 345. This may be done in a generally circumferentialdirection, for example, where the first medicine container transfer unit330 is a carousel, or in a generally linear direction.

At block 1004, the second medicine container transfer unit 345 maytransfer the medicine storage container 320 to a first discharge point350. This may be in a generally vertical direction such that themedicine storage container 320 may be elevated above the medicinetransfer unit 355.

At block 1006, the second medicine container transfer unit 345 maydischarge medicine from the medicine storage container 320 onto themedicine transfer unit 355. This may be achieved by rotating themedicine storage container 320, which may be steady or intermittent. Itshould be appreciated that other ways to discharge the medicine from themedicine storage container 320 onto the medicine transfer unit 355 arecontemplated.

At block 1008, the second medicine container transfer unit 345 may stopdischarging when the medicine transfer unit 355 detects at least apredefined amount of medicine discharged on it, which may or may not bethe required dosage. For example, the medicine transfer unit 355 mayinclude one or more sensors that detect weight, area, volume, or anyother characteristic by which an amount of medicine on the medicinetransfer unit 355 may be determined. The medicine transfer unit 355 maythen communicate, e.g., send a signal, directly to the second medicinecontainer transfer unit 345 to stop discharging, or indirectly bysending a signal to the processor 106 that the predefined amount ofmedicine has been detected, the processor 106 in turn commanding thesecond medicine container transfer unit 345 to stop discharging.

At block 1010, the first medicine container transfer unit 330 maytransfer a first medicine transfer container 375 to a second medicinedischarge point 380, which may be, but is not limited to, at an end ofthe medicine transfer unit 355. The medicine transfer unit 355 may thenbegin discharging the medicine on it into the medicine transfercontainer 375.

At block 1012, the medicine transfer unit 355 may stop discharging themedicine.

At block 1014, the processor 106 may determine if the medicine insidethe first medicine transfer container 375 is less than the requireddosage, i.e., the same as or more than the required dosage. In oneexemplary approach, this may be determined by measuring the weight ofthe medicine in the first medicine transfer container 375 by the scale395 on which the first medicine transfer container 375 may be disposed.The scale 395 may then transmit data representing the measured weight tothe processor 106, which may then compare the measured weight with aweight corresponding to the medicine in the required dosage, which maybe stored locally on the memory 108 and/or remotely at any one of thedatabases 510-516.

If the medicine inside the first medicine transfer unit is not less thanthe required dosage, then process 1000 may proceed to block 1016. If itis less, then process 1000 may repeat blocks 1006 to 1012 until theamount of medicine inside the first medicine transfer container 375 isnot less than the required dosage. Then process 1000 may proceed toblock 1016.

At block 1016, the medicine container transfer units 330 and 345 maytransfer the medicine storage container 320 to the second medicinedischarge point 380. For example, the second medicine container transferunit 345 may lower the medicine storage container 320 back to a plane ofthe first medicine container transfer unit 330, which may, in turn,rotate or otherwise move the medicine storage container 320 to thesecond medicine discharge point 380.

At block 1018, the medicine transfer unit 355 may discharge all theremaining medicine on it back into the medicine storage container 320.

At block 1020, the medicine container transfer units 330 and 345 maymove the first medicine transfer container 375 to the first medicinedischarge point 350. If the medicine in the first medicine transfercontainer 375 is equal to the required dosage, process 1000 may proceedto block 1022. If the medicine in the first medicine transfer container375 is greater than the required dosage, process 1000 may proceed toblock 1024.

At block 1022, the first medicine container transfer unit 330 maytransfer the dispensed medicine container 365 to the second medicinedischarge point 380. The second medicine container transfer unit 345 maythen transfer all the medicine in the first medicine transfer container375 onto the medicine transfer unit 355, which, in turn, may thentransfer the medicine into the dispensed medicine container 365. Process1000 may end after this step.

At block 1024, the first medicine container transfer unit 330 maytransfer the second medicine transfer container 370, to the secondmedicine discharge point 380. The second medicine container transferunit 345 may then discharge medicine from the first medicine transfercontainer 375 onto the medicine transfer unit 355, which, in turn, maybegin transferring medicine into the second medicine transfer container370. The processor 106 may then determine if the medicine inside thefirst medicine transfer container 375, the second medicine transfercontainer 370, or the combination of the medicine transfer containers370, 375 is equal to or greater than the required dosage. If it isequal, process 1000 may proceed to blocks 1026 and 1028. If it isgreater, process 1000 may proceed to blocks 1030 and 1032.

At block 1026, the medicine container transfer unit 345 and the medicinetransfer unit 355 may both stop discharging.

At block 1028, medicine in the first medicine transfer container 375,the second medicine transfer container 370, or both that equals therequired dosage may be discharged into the dispensed medicine container365. The remaining amount of medicine, which may be in the firstmedicine transfer container 375 and/or on the medicine transfer unit355, may be discharged back into the medicine storage container 320.Both medicine transfer containers 370, 375 should be empty after thisstep. Process 1000 may end after this step.

At block 1030, the medicine transfer unit 355 may stop dischargingmedicine into the second medicine transfer container 370. The remainingmedicine may be discharged back into the medicine storage container 320.

Blocks 1020 through 1030 may be repeated until the medicine in the firstmedicine transfer container 375, the second medicine transfer container370, or the combination of the medicine transfer containers 370, 375equals the required dosage in block 1026. Process 1000 may end after thefinal iteration of block 1026.

Process 1000 may be repeated for the next medicine when required.

In general, process 1000 may be a closed feedback loop process withstable and fast convergent iterations. In addition, the processor 106may communicate with, i.e., send commands to, receive data from, and thelike, to various components of the dispensing unit 102 and/or system 500to perform process 1000, and to decide the best way to distribute themedicine among medicine storage container 320, the medicine transfercontainers 370, 375, and the dispensed medicine container 365 based onprocess 1000.

FIG. 11A illustrates an exemplary sub-assembly 1100 of the disclosedsystem. FIG. 11B illustrates the exemplary system of FIG. 11A duringoperation. FIG. 11C illustrates a top view of the exemplary system ofFIGS. 11A and 11B. FIG. 11A illustrates the disclosed dispenser having aconveyor 1105, a robot 1120, and carousel 310. In this example medicinecontainer transfer unit 330 includes carousel 310, medicine containertransfer unit 345 includes robot 1120 having an end of arm tool 1125,medicine transfer unit 355 having a conveyor 1105 and sensors 1110 and1115. FIG. 11B is a view of sub-assembly as shown in FIG. 11A, showingmedicine storage container 320 transferred to first medicine dischargepoint 350 by medicine container transfer unit 345 to discharge medicinefrom medicine storage container 320 to conveyor 1105. Sensors 1110 and1115 monitor medicine positioned on medicine transfer unit 355 and morespecifically on conveyor 1105.

FIG. 11A illustrates an exemplary sub-assembly 1100 illustrating thedisclosed system or dispenser. Sub-assembly 1100 is a view of insideelements of dispenser 102 and includes carousel 310. Sub-assembly 1100includes loading station or medicine container loading station 325,first medicine container transfer unit 330, and medicine containerstorage nest 335. Medicine container loading point 340 is proximatesecond medicine container transfer unit 345. First medicine dischargepoint 350 includes, in the illustrated example, medicine travel unit 355that may include conveyer 1105 for transporting or otherwise conveyingmedicine from medicine container travel unit 345 to second medicinedischarge point 380, and may include sensors 1110 and 1115. Sub-assembly1100 includes weight checking station 360, dispensed medicine container365, a calibration and verification device 382 to automaticallycalibrate weight detecting devices, and medicine transfer containers 370and 375. Medicine storage container 320 is positioned on carousel 310.

Referring to FIGS. 11A-C, FIG. 11A is an illustration of medicinestorage container 320 as positioned proximate medicine containertransfer unit 345, and FIG. 11B the exemplary system of FIG. 11A duringoperation. Medicine storage container 320 may include original medicinecontainer 390, medicine container identification unit 385, weightdetecting device 395, and medicine container storage nest 335. Weightdetecting device 395 and medicine container storage nest 335 may beintegrated together. Weight detecting device 395 and medicine containerstorage nest 335 may also be part of carousel 310. Weight detectingdevice 395 may be a scale, a load cell, or other device for measuringweight, according to the disclosure. Weight detecting device 395 andmedicine container storage nest 335 are positioned about carousel 310 ateach of the illustrated locations. Medicine container identificationunit 385 may include identification information particular to a givenmedicine, and may also identify an amount of medicine that mayconstitute a single patient dose particular to a given user of dispenser102.

Referring still to FIG. 11A, medicine storage container 320 may beloaded into dispenser 102 from medicine container loading station 325,and medicine storage container 320 is transferred to medicine containerloading point 340 by medicine container transfer unit 330. Medicinestorage container 320 may include medicine in the form of a pill or acapsule, as examples, and a dose of medicine for a user may include oneor more of the pills or capsules. Medicine container transfer unit 330is illustrated as having carousel 310, but may instead include aconveyor, a robot, or any device that can move medicine storagecontainer 320 from one position to another, and discharge medicine frommedicine storage container 320.

Medicine transfer unit 355 moves medicine from one position to another,accepts medicine from medicine storage container 320, and medicinetransfer unit 355 also discharges medicine into medicine storagecontainer 320 or any container when positioned at medicine dischargepoint 380. Medicine transfer unit 355 may have a linear moving surfacesuch as a walking beam, a conveyor, or a rotating surface such as arotating disc or other shape.

In operation, as shown in FIGS. 11A and 11B, dispenser 102 moves, viacarousel 310, medicine storage container 320 to loading point 312, andloading point 312 is proximate medicine container transfer unit 345.Medicine container transfer unit 345 engages with medicine storagecontainer 320 by attaching thereto, and moving medicine storagecontainer 320 vertically to first medicine discharge point 350. Medicinestorage container 320 is, in one example, a medicine storage containerwhich may have an amount of medicine that is in excess of a dose, or anamount of medicine that is desired to be distributed into dispensedmedicine container 365. Medicine container transfer unit 345 turnsmedicine storage container 320 such that a predetermined amount ofmedicine spills or otherwise pours from medicine storage container 320onto medicine transfer unit 355. Carousel 310 rotates to move medicinestorage container 370 to second medicine discharge point 380. Whenmedicine transfer container 370 is positioned at medicine dischargepoint 380, and when medicine has been discharged onto medicine transferunit 355, medicine transfer unit 355 thereby conveys the dischargedmedicine from medicine transfer unit 355 into medicine transfercontainer 370 until at least a second predetermined amount of medicineis contained in medicine transfer container 370, as determined by weightdetecting device 395 and medicine container storage nest 335, whichweigh and transmit weight information to for instance a controller ofdispenser 102.

Medicine transfer unit 355 includes conveyor 1105, and sensors 1110 and1115, which monitor medicine positioned on medicine transfer unit 355and on conveyor 1105. Sensors 1110, 1115 may be optical sensors that arecoupled, electrically or optically as examples, to processor 106. Assuch, processor 106 monitors an amount of medicine positioned onmedicine transfer unit 355 via sensors 1110, 1115.

FIG. 11C illustrates a top view of the exemplary system of FIGS. 11A and11B, and shows medicine storage container 320 turned such that at leasta predetermined amount of medicine spills or otherwise pours frommedicine storage container 320 onto medicine transfer unit 355. Sensors1110 and 1115 detect the presence of pills or capsules 1125 as they passthereby via medicine transfer unit 355 to second medicine dischargepoint 380.

Medicine is transferred from medicine transfer unit 355 into medicinetransfer container 370, and a weight of the medicine is determined viaweight detecting device 395. If the measured weight is less than a givenor desired dose, and if medicine is still on medicine transfer unit 355(i.e., has not been fully discharged), then medicine transfer unit 355further conveys more medicine into medicine transfer container 370. Onthe other hand, if no medicine is on medicine transfer unit 355, thenadditional medicine is discharged to medicine transfer unit 355 frommedicine storage container 320. The process of discharging from medicinestorage container 320 to medicine transfer unit 355, and from medicinetransfer unit 355 to medicine transfer container 370 continues until atleast a dose of medicine is contained in medicine transfer container370. That is, medicine transfer container 370 may include an exact ordesired dose, or may include an amount of medicine that is in excess ofan exact dose.

If an exact dose is present in medicine transfer container 370, thendispenser 102 operates to convey medicine transfer container 370 tofirst medicine discharge point 350 via medicine container transfer unit345, any remaining medicine on medicine transfer unit 355 is dischargedback into medicine storage container 320 at second medicine dischargepoint 380, and the medicine in medicine transfer container 370 isdischarged into dispensed medicine container 365 that is positioned atsecond medicine discharge point 380.

On the other hand, in one example medicine transfer container 370 mayinclude an amount of medicine that is in excess of an exact dose. Insuch an example, medicine transfer container 370 is thereby conveyed tofirst medicine discharge point 350 and operations described above arerepeated. That is, medicine container transfer unit 345 dischargesmedicine from medicine transfer container 370 onto medicine transferunit 355, and medicine transfer container 375 is conveyed via carousel310 to second medicine discharge point 380. Medicine discharged frommedicine transfer container 370 to medicine transfer unit 355 is therebyconveyed to medicine transfer container 375 until at least the exactdose is present in medicine transfer container 375. And, again, ifmedicine transfer container 375 includes medicine equal to the dose,then the medicine in medicine transfer container 375 is discharged intodispensed medicine container 365, and any excess medicine on medicinetransfer unit 355 is returned to medicine storage container 320.

The aforementioned steps continue until a dose of medicine is containedwithin dispensed medicine container 365, and any additional medicine isreturned to medicine storage container 320. In such fashion, dispenser102 includes a feedback mechanism, ensuring a proper dose, and only aproper dose, is contained in dispensed medicine container 365. That is,feedback is provided in the form of a weight of pills or capsules,corresponding to a dose, measured via weight detecting device 395.Dispenser 102 is caused to operate using such feedback to ensure that acorrect dose is provided in dispensed medicine container 365.

Referring now to FIG. 12, a flow diagram of another exemplary process1200 for operating the dispensing unit 102, which may incorporate thesub-assembly 1100, is illustrated. Process 1200 may include operationsthat may be part of program 110, stored on memory 108, and/or executedby processor 106. Process 1200 may take many different forms and includemultiple and/or alternate steps. While an exemplary process is shown,the exemplary steps illustrated are not intended to be limiting. Indeed,additional or alternative steps and/or implementations may be used. Inaddition, for purposes of process 1200, the first medicine containertransfer unit 330 is referred to as the carousel, and the secondmedicine container transfer unit 345 is referred to as the robot.However, it should be appreciated that any medicine container transferunit 330, 345 for performing the respective step(s) is contemplated, andthat the use of the terms carousel and robot are not intended to belimiting.

Process 1200 may begin at block 1202 at which the carousel 310 maytransfer a medicine storage container 320 to the loading point 340 ofrobot 345.

At block 1204, robot 345 may transfer the medicine storage container 320to a first medicine discharge point 350 above the conveyor 1105.

At block 1206, robot 345 may rotate the medicine storage container 320in a controlled manner to pour medicine from the medicine storagecontainer 320 onto the conveyor 1105, which may be stationary or moving.

At block 1208, at least one sensor 1110 may detect medicine dischargedon the conveyor 1105.

At block 1210, robot 345 may stop pouring medicine storage container 320when medicine on the conveyor 1105 is equal to or greater than apredefined quantity. This may be determined based on feedback fromsensor 1110 or other means. Robot 345 may then return the medicinestorage container 320 to carousel 310.

At block 1212, the carousel 310 may transfer a first medicine transfercontainer 375, to the second medicine discharge point 380.

At block 1214, the conveyor 1105 may move to discharge medicine fromconveyor 1105 into the first medicine transfer container 375.

At block 1216, a sensor 1115 and/or scale 395 under the first medicinetransfer container 375 may detect a quantity of medicine discharged intothe first medicine transfer container 375.

At block 1218, the conveyor 1105 is stopped based on feedback from thesensor 1115 and/or scale 395 that the quantity of medicine inside thefirst medicine transfer container 375 is equal to or greater than therequired dosage, or the medicine left on the conveyor 1105 is equal tothe required dosage.

At block 1220, the processor 106 may determine if the medicine on theconveyor 1105 equals the required dosage. If so, carousel 310 maytransfer the dispensed medicine container 365 to the second medicinedischarge point 380, and the conveyor 1105 may discharge all of themedicine on it into the dispensed medicine container 365. Carousel 310,robot 345, and conveyor 355 may then work together to discharge allmedicines inside the first medicine transfer container 375 back into themedicine storage container 320. Process 1200 may then end.

At block 1222, carousel 310 may transfer medicine storage container 320to the second medicine discharge point 380, and conveyor 1105 may beginto discharge all remaining medicine on conveyor 1105 into the medicinestorage container 320.

At block 1224, the processor 106 may determine if the medicine insidethe first medicine transfer container 375 is equal to the requireddosage. If so, carousel 310 may transfer the dispensed medicinecontainer 365 to the second medicine discharge point 380. Carousel 310,robot 345, and conveyor 355 may then work together to discharge allmedicines inside the first medicine transfer container 375, 375 into thedispensed medicine container 365. Process 1200 may then end.

At block 1226, the processor 106 may determine if the medicine insidethe first medicine transfer container 375 is greater than the requireddosage. If so, carousel 310 may transfer the first medicine transfercontainer 375 to the first medicine discharge point 350, and transferthe second medicine transfer container 370 to the second medicinedischarge point 380. Blocks 1202 through 1224 may then be repeated withthe medicine transfer containers 375 and 370 until the required dosageis dispensed into the dispensed medicine container 365, and all extramedicine, e.g., in the medicine transfer containers 375, 370 and/or onthe conveyor 1105, is returned to the medicine storage container 320.

Process 1200 may be repeated for the next medicine when required.

In embodiments, scale(s) 395, for example, in each weighing station orstorage nests associated with each container, may check quantity ofmedicine inside each container involved in process 1400, e.g., themedicine storage container 320, the medicine transfer containers 370,375, and the dispensed medicine container 365.

In general, process 1200 may be a closed feedback loop process withstable and fast convergent iterations. In addition, the processor 106may communicate with, i.e., send commands to, receive data from, and thelike, to various components of the dispensing unit 102 and/or system 500to perform process 1200, and may decide the best way to distribute themedicine among medicine storage container 320, the medicine transfercontainers 370, 375, and the dispensed medicine container 365 based onprocess 1200.

FIG. 13A illustrates an exemplary sub-assembly 1300 of the disclosedsystem. Sub-assembly 1300 includes medicine container transfer unit 330having carousel 310, medicine container transfer unit 345 includes arobot with end of arm tool. Medicine transfer unit 355 includes a robotor conveyor 1305, sensors 1110 (not visible) and 1115, robot 1345 havingan end of arm tool (EOAT) 1310, a sensor 1330, and a vacuum head 1315.Medicine container transfer unit 345 and robot 1345 may be two differentrobots, or two different parts of the same one robot.

FIG. 13B is a view of the example of FIG. 13A, showing end of arm tool1310 at medicine discharge position 1325 to discharge medicine intomedicine storage container at medicine container transfer unit 330discharge position 1320. The end of arm tool 1310 may also dischargemedicine into medicine storage container at medicine container transferunit 330 discharge position 380 (not shown). The end of arm tool 1310may also pick up medicine from medicine containers at discharge position1320 or 380 and discharge onto medicine transfer unit 355.

Sub-assembly 1300 is a view of inside elements of dispenser 102 andincludes carousel 310. Sub-assembly 1300 includes loading station ormedicine container loading station 325, first medicine containertransfer unit 330, and medicine container storage nest 335. Medicinecontainer loading point 340 is proximate second medicine containertransfer unit 345. First medicine discharge point 350 includes, in theillustrated example, medicine transfer unit 355 that may include robot1345 and conveyer 1305 for transporting or otherwise conveying medicinefrom medicine container transfer unit 345 to second medicine dischargepoint 380, and may include sensors 1110 (not visible) and 1115.Sub-assembly 1300 includes weight checking station 360, a calibrationand verification device 382 to automatically calibrate weight detectingdevices, dispensed medicine container 365, and medicine transfercontainer 370 and 375. Medicine storage container 320 is positioned oncarousel 310.

FIG. 13A is an illustration of exemplary sub-system 1300, and FIG. 13Bof the exemplary system of FIG. 13A shows end of arm tool 1310 atmedicine discharge position 1325. Medicine storage container 320 mayinclude original medicine container 390, medicine containeridentification unit 385, weight detecting device 395, and medicinecontainer storage nest 335. Weight detecting device 395 and medicinecontainer storage nest 335 may be integrated together. Weight detectingdevice 395 and medicine container storage nest 335 may also be part ofcarousel 310. Weight detecting device 395 may be a scale, a load cell,or other device for measuring weight, according to the disclosure.Weight detecting device 395 and medicine container storage nest 335 arepositioned about carousel 310 at each of the illustrated locations.Medicine container identification unit 385 may include identificationinformation particular to a given medicine, and may also identify anamount of medicine that may constitute a single patient dose particularto a given user of dispenser 102.

Referring still to FIG. 13A, medicine storage container 320 may beloaded into dispenser 102 from medicine container loading station 325,and medicine storage container 320 is transferred to medicine containerloading point 340 by medicine container transfer unit 330. Medicinestorage container 320 may include medicine in the form of a pill or acapsule, as examples, and a dose of medicine for a user may include oneor more of the pills or capsules. Medicine container transfer unit 330is illustrated as having carousel 310, but may instead include aconveyor, a robot, or any device that can move medicine storagecontainer 320 from one position to another, and discharge medicine frommedicine storage container 320.

Medicine transfer unit 355 moves medicine from one position to another,accepts medicine from medicine storage container 320, and medicinetransfer unit 355 also discharges medicine into medicine storagecontainer 320 or any container when positioned at medicine dischargepoint 380. Medicine transfer unit 355 may have a linear moving surfacesuch as a walking beam, a conveyor, or a rotating surface such as arotating disc or other shape, and includes in the illustrated exampleconveyer 1305.

In operation, as shown in FIGS. 13A and 13B, dispenser 102 moves, viacarousel 310, medicine storage container 320 to loading point 312, andloading point 312 is proximate medicine container transfer unit 345.Medicine container transfer unit 345 engages with medicine storagecontainer 320 by attaching thereto, and moving medicine storagecontainer 320 vertically to first medicine discharge point 350. Medicinestorage container 320 is, in one example, a medicine storage containerwhich may have an amount of medicine that is in excess of a dose, or anamount of medicine that is desired to be distributed into dispensedmedicine container 365. Medicine container transfer unit 345 turnsmedicine storage container 320 such that a predetermined amount ofmedicine spills or otherwise pours from medicine storage container 320onto medicine transfer unit 355. Carousel 310 rotates to move medicinetransfer container 370 to second medicine discharge point 380. Whenmedicine transfer container 370 is positioned at medicine dischargepoint 380, and when medicine has been discharged onto medicine transferunit 355, medicine transfer unit 355 thereby conveys the dischargedmedicine from medicine transfer unit 355 into medicine transfercontainer 370 until at least a second predetermined amount of medicineis contained in medicine transfer container 370, as determined by weightdetecting device 395 and medicine container storage nest 335, whichweigh and transmit weight information to for instance a controller ofdispenser 102.

Medicine transfer unit 355 includes robot 1345 and conveyor 1305, andsensors 1110 and 1115, which monitor medicine positioned on medicinetransfer unit 355 and on conveyor 1305. Sensors 1110, 1115 may beoptical sensors that are coupled, electrically or optically as examples,to processor 106. As such, processor 106 monitors an amount of medicinepositioned on medicine transfer unit 355 via sensors 1110, 1115. Sensors1110 and 1115 detect the presence of pills or capsules as they passthereby via medicine transfer unit 355 to second medicine dischargepoint 380. In addition, robot 1345 includes end of arm tool 1310 havingvacuum head 1315 that may attach via a vacuum, controlled by processor106, to individual pills or capsules passing along medicine transferunit 355. Accordingly, in this example, pills or capsules may be notonly conveyed by conveyor 1305 to medicine transfer container 370 ormedicine transfer container 375 when positioned at medicine dischargepoint 380, but also conveyed by robot 1345 to medicine transfercontainer 370 or 375 when positioned at medicine discharge point 380.Pills or capsules may also be conveyed by robot 1345 to medicinetransfer container 370 or 375 positioned at position 1320. Pills orcapsules may also be conveyed by robot 1345 from medicine transfercontainers 370 or 375 at discharge point 380 or 1320 back to themedicine transfer unit 355. Both methods may be used concurrently orseparately. Thus, overall efficiency or movement of pills or capsulesmay be improved by having an ability to move pills or capsules to and/orfrom two locations simultaneously.

Medicine is transferred from medicine transfer unit 355 into medicinetransfer container 370, and a weight of the medicine is determined viaweight detecting device 395. If the measured weight is less than a givenor desired dose, and if medicine is still on medicine transfer unit 355(i.e., has not been fully discharged), then medicine transfer unit 355further conveys more medicine into medicine transfer container 370. Onthe other hand, if no medicine is on medicine transfer unit 355, thenadditional medicine is discharged to medicine transfer unit 355 frommedicine storage container 320. The process of discharging from medicinestorage container 320 to medicine transfer unit 355, and from medicinetransfer unit 355 to medicine transfer container 370 continues until atleast a dose of medicine is contained in medicine transfer container370. That is, medicine transfer container 370 may include an exact ordesired dose, or may include an amount of medicine that is in excess ofan exact dose.

If an exact dose is present in medicine transfer container 370, thendispenser 102 operates to convey medicine transfer container 370 tofirst medicine discharge point 350 via medicine container transfer unit345, any remaining medicine on medicine transfer unit 355 is dischargedback into medicine storage container 320 at second medicine dischargepoint 380, and the medicine in medicine transfer container 370 isdischarged into dispensed medicine container 365 that is positioned atsecond medicine discharge point 380.

On the other hand, in one example medicine transfer container 370 mayinclude an amount of medicine that is in excess of an exact dose. Insuch an example, medicine transfer container 370 is thereby conveyed tofirst medicine discharge point 350 and operations described above arerepeated. That is, medicine container transfer unit 345 dischargesmedicine from medicine transfer container 370 onto medicine transferunit 355, and medicine transfer container 375 is conveyed via carousel310 to second medicine discharge point 380. Medicine discharged frommedicine transfer container 370 to medicine transfer unit 355 is therebyconveyed to medicine transfer container 375 until at least the exactdose is present in medicine transfer container 375. And, again, ifmedicine transfer container 375 includes medicine equal to the dose,then the medicine in medicine transfer container 375 is discharged intodispensed medicine container 365, and any excess medicine on medicinetransfer unit 355 is returned to medicine storage container 320.

The aforementioned steps continue until a dose of medicine is containedwithin dispensed medicine container 365, and any additional medicine isreturned to medicine storage container 320. In such fashion, dispenser102 includes a feedback mechanism, ensuring a proper dose, and only aproper dose, is contained in dispensed medicine container 365. That is,feedback is provided in the form of a weight of pills or capsules,corresponding to a dose, measured via weight detecting device 395.Dispenser 102 is caused to operate using such feedback to ensure that acorrect dose is provided in dispensed medicine container 365. However,in the illustrated example, medicine, in this example, may be conveyedto and from medicine transfer container 370 or medicine transfercontainer 375 positioned at discharge position 1320 and 380, allowingsimultaneous iterations using two conveying methods on two containers inboth directions, which may allow convergence to a final dose, andmovement of medicine to and from medicine transfer unit 355 via a secondpath (i.e., via vacuum head 1315, for discharge position 380 and for acontainer positioned at discharge position 1320).

Referring now to FIG. 14, a flow diagram of another exemplary process1400 for operating the dispensing unit 102, which may incorporate thesub-assembly 1300, is illustrated. Process 1400 may include operationsthat may be part of program 110, stored on memory 108, and/or executedby processor 106. Process 1400 may take many different forms and includemultiple and/or alternate steps. While an exemplary process is shown,the exemplary steps illustrated are not intended to be limiting. Indeed,additional or alternative steps and/or implementations may be used. Inaddition, for purposes of process 1400, the first medicine containertransfer unit 330 is referred to as the carousel, and the secondmedicine container transfer unit 345 is referred to as the robot.However, it should be appreciated that any medicine container transferunit 330, 345 for performing the respective step(s) is contemplated, andthat the use of the terms carousel and robot are not intended to belimiting.

Blocks 1402 through 1410 may be the same or similar as blocks 1202through 1210 of process 1200. Process 1400 may begin to diverge fromprocess 1200 at block 1412 at which the carousel 310 may transfer amedicine transfer container 370, 375 to a medicine discharge point 1320(as opposed to discharge point 380).

At block 1414, conveyor 1105 may vibrate to spread the medicine thereonout evenly.

At block 1416, conveyor 1105 may move forward until the sensor 1115detects medicine, after which conveyor 1105 may stop.

At block 1418, robot 1345 may move forward from a home position 1010until sensor 1030 detects medicine, after which robot 1345 may stop.

At block 1420, vacuum head 1315 may descend to pick up the medicine andthen vacuum head 1315 may return to its original position.

At block 1422, robot 1345 may move forward to discharge the medicine onthe vacuum head 1315 into the medicine transfer container 370, 375 atmedicine discharge point 1320. Robot 1345 may also discharge themedicine on the vacuum head 1315 into the medicine transfer container370, 375 at medicine discharge point 380 (not shown). Robot 1345 mayalso pick up medicine from medicine transfer containers 370,375 atmedicine discharge point 380 or 1320 and discharge onto the medicinetransfer unit 355.

At block 1424, processor 106 may determine if the medicine in themedicine transfer container 370, 375 has reached the required dosage. Ifit has, then process 1400 may proceed to block 1426. If it has not, andthere is still medicine left along the pathway of the motion of robot1345, then process 1400 may repeat blocks 1416 to 1422 until therequired dosage has been reached, after which process 1400 may proceedto block 1426.

At block 1426, carousel 310 may transfer the medicine storage container320 to the medicine discharge point 380, and conveyor 1105 may moveforward to discharge all remaining medicine on the conveyor 1105 intothe medicine storage container 320. Process 1400 may then proceed toblock 1430.

At block 1428, processor 106 may determine if any medicine remains onthe conveyor 1105. If not, and the medicine inside the medicine transfercontainer 370, 375 is still less than required dosage, blocks 1404through 1430 may be repeated.

At block 1430, all the medicine inside of the medicine transfercontainer 370, 375 may be discharged into the dispensed medicinecontainer 365.

Process 1400 may be repeated for the next medicine when required orprocess 1400 may end.

In embodiments, scale(s) 395, for example, in each weighing station orstorage nests associated with each container, may check quantity ofmedicine inside each container involved in process 1400, e.g., themedicine storage container 320, the medicine transfer containers 370,375, and the dispensed medicine container 365.

In general, process 1400 may be a closed feedback loop process withstable and fast convergent iterations. In addition, the processor 106may communicate with, i.e., send commands to, receive data from, and thelike, to various components of the dispensing unit 102 and/or system 500to perform process 1400, and may decide the best way to distribute themedicine among medicine storage container 320, the medicine transfercontainers 370, 375, and the dispensed medicine container 365 based onprocess 1400.

FIG. 15A illustrates an exemplary sub-assembly 1500 of dispenser 102with a conveyor, a robot, a vacuum head (mounted on the same robot or adifferent robot), a vision system, and a carousel. In this examplemedicine container transfer unit 330 includes carousel 310, medicinecontainer transfer unit 345 includes a robot with end of arm tool,medicine transfer unit 355 includes conveyor 1305, two sensors 1110 (notvisible) and 1115, robot 1345 with end of arm tool 1310, sensor 1330,vacuum head 1315, and a machine vision system 1505 coupled to processor106 and configured to output a visual location and images of items, suchpills or capsules, of dispenser 102. Robot 345 and robot 1345 may be twodifferent robots, or two different parts of the same one robot.

FIG. 15B shows end of arm tool 1310 at medicine discharge position 1325to discharge medicine into the medicine storage container at themedicine container transfer unit 330 discharge position 1320. End of armtool 1310 may also discharge medicine into medicine storage container atmedicine container transfer unit 330 discharge position 380 (not shown).

FIG. 15A illustrates an exemplary sub-assembly 1500 of the disclosedsystem. Sub-assembly 1500 includes medicine container transfer unit 330having carousel 310, medicine container transfer unit 345 includes arobot with end of arm tool. Medicine transfer unit 355 includes a robotor conveyor 1305, sensors 1110 (not visible) and 1115, robot 1345 havingan end of arm tool (EOAT) 1310, a sensor 1330, and a vacuum head 1315.Medicine container transfer unit 345 and robot 1345 may be two differentrobots, or two different parts of the same one robot. FIG. 15B is a viewof the example of FIG. 15A, showing end of arm tool 1310 at medicinedischarge position 1325 to discharge medicine into medicine storagecontainer at medicine container transfer unit 330 discharge position1320. The end of arm tool 1310 may also discharge medicine into medicinestorage container at medicine container transfer unit 330 dischargeposition 380 (not shown).

Sub-assembly 1500 is a view of inside elements of dispenser 102 andincludes carousel 310. Sub-assembly 1500 includes loading station ormedicine container loading station 325, first medicine containertransfer unit 330, and medicine container storage nest 335. Medicinecontainer loading point 340 is proximate second medicine containertransfer unit 345. First medicine discharge point 350 includes, in theillustrated example, medicine transfer unit 355 that may include robot1345 and conveyer 1305 for transporting or otherwise conveying medicinefrom medicine container transfer unit 345 to second medicine dischargepoint 380, and may include sensors 1110 (not visible) and 1115.Sub-assembly 1500 includes weight checking station 360, a calibrationand verification device 382 to automatically calibrate weight detectingdevices, dispensed medicine container 365, and medicine transfercontainer 370 and 375. Medicine storage container 320 is positioned oncarousel 310.

FIG. 15A is an illustration of medicine storage container 320 aspositioned proximate medicine container transfer unit 345, and FIG. 15Bof the exemplary system of FIG. 15A shows end of arm tool 1310 atmedicine discharge position 1325. Medicine storage container 320 mayinclude original medicine container 390, medicine containeridentification unit 385, weight detecting device 395, and medicinecontainer storage nest 335. Weight detecting device 395 and medicinecontainer storage nest 335 may be integrated together. Weight detectingdevice 395 and medicine container storage nest 335 may also be part ofcarousel 310. Weight detecting device 395 may be a scale, a load cell,or other device for measuring weight, according to the disclosure.Weight detecting device 395 and medicine container storage nest 335 arepositioned about carousel 310 at each of the illustrated locations.Medicine container identification unit 385 may include identificationinformation particular to a given medicine, and may also identify anamount of medicine that may constitute a single patient dose particularto a given user of dispenser 102.

Referring still to FIG. 15A, medicine storage container 320 may beloaded into dispenser 102 from MCLS 325, and medicine storage container320 is transferred to MCLP 340 by medicine container transfer unit 330.Medicine storage container 320 may include medicine in the form of apill or a capsule, as examples, and a dose of medicine for a user mayinclude one or more of the pills or capsules. Medicine containertransfer unit 330 is illustrated as having carousel 310, but may insteadinclude a conveyor, a robot, or any device that can move medicinestorage container 320 from one position to another, and dischargemedicine from medicine storage container 320.

Medicine transfer unit 355 moves medicine from one position to another,accepts medicine from medicine storage container 320, and medicinetransfer unit 355 also discharges medicine into medicine storagecontainer 320 or any container when positioned at medicine dischargepoint 380. Medicine transfer unit 355 may have a linear moving surfacesuch as a walking beam, a conveyor, or a rotating surface such as arotating disc or other shape, and includes in the illustrated exampleconveyer 1305.

In operation, as shown in FIGS. 15A and 15B, dispenser 102 moves, viacarousel 310, medicine storage container 320 to loading point 312, andloading point 312 is proximate medicine container transfer unit 345.Medicine container transfer unit 345 engages with medicine storagecontainer 320 by attaching thereto, and moving medicine storagecontainer 320 vertically to first medicine discharge point 350. Medicinestorage container 320 is, in one example, a medicine storage containerwhich may have an amount of medicine that is in excess of a dose, or anamount of medicine that is desired to be distributed into dispensedmedicine container 365. Medicine container transfer unit 345 turnsmedicine storage container 320 such that a predetermined amount ofmedicine spills or otherwise pours from medicine storage container 320onto medicine transfer unit 355. Carousel 310 rotates to move medicinetransfer container 370 to second medicine discharge point 380. Whenmedicine transfer container 370 is positioned at medicine dischargepoint 380, and when medicine has been discharged onto medicine transferunit 355, medicine transfer unit 355 thereby conveys the dischargedmedicine from medicine transfer unit 355 into medicine transfercontainer 370 until at least a second predetermined amount of medicineis contained in medicine transfer container 370, as determined by weightdetecting device 395 and MCSN 335, which weigh and transmit weightinformation to for instance a controller of dispenser 102.

Medicine transfer unit 355 includes robot 1345 and conveyor 1305, andsensors 1110 and 1115, which monitor medicine positioned on medicinetransfer unit 355 and on conveyor 1305. Sensors 1110, 1115 may beoptical sensors that are coupled, electrically or optically as examples,to processor 106. As such, processor 106 monitors an amount of medicinepositioned on medicine transfer unit 355 via sensors 1110, 1115. Sensors1110 and 1115 detect the presence of pills or capsules as they passthereby via medicine transfer unit 355 to second medicine dischargepoint 380. In addition, robot 1345 includes end of arm tool 1310 havingvacuum head 1315 that may attach via a vacuum, controlled by processor106, to individual pills or capsules passing along medicine transferunit 355. Accordingly, in this example, pills or capsules may be notonly conveyed by conveyor 1305 to medicine transfer container 370 ormedicine transfer container 375 when positioned at medicine dischargepoint 380, but also conveyed by robot 1345 to medicine transfercontainer 370 or 375 when positioned at medicine discharge point 380.Pills or capsules may also be conveyed by robot 1345 to medicinetransfer container 370 or 375 positioned at position 1320. Pills orcapsules may also be conveyed by robot 1345 from medicine transfercontainers 370 or 375 at discharge point 380 or 1320 back to themedicine transfer unit 355. Both methods may be used concurrently orseparately. Thus, overall efficiency or movement of pills or capsulesmay be improved by having an ability to move pills or capsules to twolocations simultaneously.

Medicine is transferred from medicine transfer unit 355 into medicinetransfer container 370, and a weight of the medicine is determined viaweight detecting device 395. If the measured weight is less than a givenor desired dose, and if medicine is still on medicine transfer unit 355(i.e., has not been fully discharged), then medicine transfer unit 355further conveys more medicine into medicine transfer container 370. Onthe other hand, if no medicine is on medicine transfer unit 355, thenadditional medicine is discharged to medicine transfer unit 355 frommedicine storage container 320. The process of discharging from medicinestorage container 320 to medicine transfer unit 355, and from medicinetransfer unit 355 to medicine transfer container 370 continues until atleast a dose of medicine is contained in medicine transfer container370. That is, medicine transfer container 370 may include an exact ordesired dose, or may include an amount of medicine that is in excess ofan exact dose.

If an exact dose is present in medicine transfer container 370, thendispenser 102 operates to convey medicine transfer container 370 tofirst medicine discharge point 350 via medicine container transfer unit345, any remaining medicine on medicine transfer unit 355 is dischargedback into medicine storage container 320 at second medicine dischargepoint 380, and the medicine in medicine transfer container 370 isdischarged into dispensed medicine container 365 that is positioned atsecond medicine discharge point 380.

On the other hand, in one example medicine transfer container 370 mayinclude an amount of medicine that is in excess of an exact dose. Insuch an example, medicine transfer container 370 is thereby conveyed tofirst medicine discharge point 350 and operations described above arerepeated. That is, medicine container transfer unit 345 dischargesmedicine from medicine transfer container 370 onto medicine transferunit 355, and medicine transfer container 375 is conveyed via carousel310 to second medicine discharge point 380. Medicine discharged frommedicine transfer container 370 to medicine transfer unit 355 is therebyconveyed to medicine transfer container 375 until at least the exactdose is present in medicine transfer container 375. And, again, ifmedicine transfer container 375 includes medicine equal to the dose,then the medicine in medicine transfer container 375 is discharged intodispensed medicine container 365, and any excess medicine on medicinetransfer unit 355 is returned to medicine storage container 320.

The aforementioned steps continue until a dose of medicine is containedwithin dispensed medicine container 365, and any additional medicine isreturned to medicine storage container 320. In such fashion, dispenser102 includes a feedback mechanism, ensuring a proper dose, and only aproper dose, is contained in dispensed medicine container 365. That is,feedback is provided in the form of a weight of pills or capsules,corresponding to a dose, measured via weight detecting device 395.Dispenser 102 is caused to operate using such feedback to ensure that acorrect dose is provided in dispensed medicine container 365. However,in the illustrated example, medicine, in this example, may be conveyedto and from medicine transfer container 370 or medicine transfercontainer 375 positioned at discharge position 1320 and 380 in bothdirections, allowing simultaneous or sequential iterations using twocontainers and two conveying methods in both directions, which may allowconvergence to a final dose, and movement of any additional medicinefrom medicine transfer unit 355 via a second path (i.e., via vacuum head1315, for containers positioned at position 1320 and 380). Additionally,vision system 1505 provides yet additional functionality, in that visionsystem 1505 may convey an image of pills or capsules passing alongmedicine transfer unit 355, providing a visual representation of thepills or capsules, and an additional method of identifying the movementthereof into medicine transfer container 370 and/or medicine transfercontainer 375. Process 106 may compare these images with images storedin database 122 to make sure correct medicine is dispensed.

Referring now to FIG. 16, a flow diagram of another exemplary process1600 for operating the dispensing unit 102, which may incorporate thesub-assembly 1500, is illustrated. Process 1600 may include operationsthat may be part of program 110, stored on memory 108, and/or executedby processor 106. Process 1600 may take many different forms and includemultiple and/or alternate steps. While an exemplary process is shown,the exemplary steps illustrated are not intended to be limiting. Indeed,additional or alternative steps and/or implementations may be used. Inaddition, for purposes of process 1600, the first medicine containertransfer unit 330 is referred to as the carousel, and the secondmedicine container transfer unit 345 is referred to as the robot.However, it should be appreciated that any medicine container transferunit 330, 345 for performing the respective step(s) is contemplated, andthat the use of the terms carousel and robot are not intended to belimiting.

Process 1600 generally may be the same as or similar to process 1400,but may differ in the incorporation of the vision system 1505. Forexample, blocks 1602 through 1610 may correspond to blocks 1402 through1414 of process 1400. Process 1600 may begin to diverge from process1400 at block 1616 at which the conveyor 1105 may move forward, and thevision system 1505 may take pictures of the area of the conveyor 1105and process the images. Conveyor 1105 may stop when the sensor 1115detects medicine or the vision system 1505 gives instructions.

At block 1618, the vision system 1505 may process the images todetermine correct medicine is dispensed and locations of the medicine onthe conveyor 1105 under robot 1345.

At block 1620, the processor 106 and the vision system 1505 may worktogether to guide conveyor 1105 and robot 1345 movements to align vacuumhead 1315 and a piece of medicine to be picked up.

The remaining blocks 1622 through 1632 may correspond with blocks 1420through 1430 of process 1400.

Process 1600 may be repeated for the next medicine when required or theprocess 1600 may end.

In embodiments, scale(s) 395, for example, in each weighing station orstorage nests associated with each container, may check quantity ofmedicine inside each container involved in process 1600, e.g., themedicine storage container 320, the medicine transfer containers 370,375, and the dispensed medicine container 365.

In general, process 1600 may be a closed feedback loop process withstable and fast convergent iterations. In addition, the processor 106may communicate with, i.e., send commands to, receive data from, and thelike, to various components of the dispensing unit 102 and/or system 500to perform process 1600, and may decide the best way to distribute themedicine among medicine storage container 320, the medicine transfercontainers 370, 375, and the dispensed medicine container 365 based onprocess 1600.

FIG. 17A illustrates an exemplary sub-assembly 1700 of the discloseddispenser 102. FIG. 17B illustrates the exemplary system of FIG. 17Aduring operation. FIG. 17C illustrates a top view of the exemplarysystem of FIGS. 17A and 17B.

FIG. 17A is an example of dispenser 102 having a rotating table, arobot, and a carousel. In this example medicine container transfer unit330 includes carousel 310, medicine container transfer unit 345 includesa rotating table 1705 and sensors 1710 and 1720. FIG. 17B shows medicinestorage container 320 transferred to medicine discharge point 350 bymedicine container transfer unit 345 to discharge medicine from themedicine storage container 320 to rotating table 1705. Sensors 1710 and1720 monitor the medicine on table 1705.

FIG. 17A illustrates the disclosed dispenser 102 having rotating table1705 and sensors 1710 and 1720. In this example medicine containertransfer unit 330 includes carousel 310, and medicine container transferunit 345 includes table 1705 on which pills or capsules may be placed,such that they may roll or otherwise move in a generally circularfashion to discharge position 1320.

FIG. 17B is a view of sub-assembly as shown in FIG. 17A, showingmedicine storage container 320 transferred to first medicine dischargepoint 350 by medicine container transfer unit 345 to discharge medicinefrom medicine storage container 320 to table 1705.

FIG. 17A illustrates an exemplary sub-assembly 1700 illustrating thedisclosed system or dispenser. Sub-assembly 1700 is a view of insideelements of dispenser 102 and includes carousel 310. Sub-assembly 1700includes first medicine container transfer unit 330, and medicinecontainer storage nest 335. Medicine container loading point 340 isproximate second medicine container transfer unit 345. Medicinecontainer transfer unit 345 may include table 1705 and may includesensors 1710 and 1720. Sub-assembly 1700 includes weight checkingstation 360, a calibration and verification device 382 to automaticallycalibrate weight detecting devices, dispensed medicine container 365,and medicine transfer container 370 and 375. Medicine storage container320 is positioned on carousel 310.

In operation, carousel 310 moves medicine storage container 320 toloading point 312, and loading point 312 is proximate medicine containertransfer unit 345. Medicine container transfer unit 345 engages withmedicine storage container 320 by attaching thereto, and moves medicinestorage container 320 to first medicine discharge point 350. Medicinestorage container 320 is, in one example, a medicine storage containerwhich may have an amount of medicine that is in excess of a dose, or anamount of medicine that is desired to be distributed into dispensedmedicine container 365. Medicine container transfer unit 345 turnsmedicine storage container 320 such that a predetermined amount ofmedicine spills or otherwise pours from medicine storage container 320onto rotating table 1705, as illustrated in FIG. 17B. Rotating table1705 is configured to rotate or jostle back and forth, causing itemssuch as pills or capsules thereon to jostle or vibrate, such that theitems pass about a circumference of rotating table 1705 and in arotational direction 1730 to a chute 1725.

When medicine transfer container 370 is positioned at discharge position1320, and when medicine has been discharged onto rotating table 1705,rotating table 1705 thereby conveys the discharged medicine fromrotating table 1705 into medicine transfer container 370 positioned atdischarge position 1320, until at least a second predetermined amount ofmedicine is contained in medicine transfer container 370, as determinedby weight detecting device 395 and medicine container storage nest 335,which weigh and transmit weight information to for instance a controllerof dispenser 102.

Medicine is transferred from rotating table 1705 into medicine transfercontainer 370, and a weight of the medicine is determined via weightdetecting device 395. If the measured weight is less than a given ordesired dose, and if medicine is still on rotating table 1705 (i.e., hasnot been fully discharged), then rotating table 1705 further conveysmore medicine into medicine transfer container 370. On the other hand,if no medicine is on rotating table 1705, then additional medicine isdischarged to rotating table 1705 from medicine storage container 320.The process of discharging from medicine storage container 320 torotating table 1705, and from rotating table 1705 to medicine transfercontainer 370 continues until at least a dose of medicine is containedin medicine transfer container 370. That is, medicine transfer container370 may include an exact or desired dose, or may include an amount ofmedicine that is in excess of an exact dose.

If an exact dose is present in medicine transfer container 370, thendispenser 102 operates to convey medicine transfer container 370 todischarge position 1320 via medicine container transfer unit 345, anyremaining medicine on rotating table 1705 is discharged back intomedicine storage container 320, and the medicine in medicine transfercontainer 370 is discharged into dispensed medicine container 365.

The aforementioned steps continue until a dose of medicine is containedwithin dispensed medicine container 365, and any additional medicine isreturned to medicine storage container 320. In such fashion, dispenser102 includes a feedback mechanism, ensuring a proper dose, and only aproper dose, is contained in dispensed medicine container 365. That is,feedback is provided in the form of a weight of pills or capsules,corresponding to a dose, measured via weight detecting device 395.Dispenser 102 is caused to operate using such feedback to ensure that acorrect dose is provided in dispensed medicine container 365.

Referring now to FIG. 18, a flow diagram of another exemplary process1800 for operating the dispensing unit 102, which may incorporate thesub-assembly 1700, is illustrated. Process 1800 may include operationsthat may be part of program 110, stored on memory 108, and/or executedby processor 106. Process 1800 may take many different forms and includemultiple and/or alternate steps. While an exemplary process is shown,the exemplary steps illustrated are not intended to be limiting. Indeed,additional or alternative steps and/or implementations may be used. Inaddition, for purposes of process 1800, the first medicine containertransfer unit 330 is referred to as the carousel, and the secondmedicine container transfer unit 345 is referred to as the robot.However, it should be appreciated that any medicine container transferunit 330, 345 for performing the respective step(s) is contemplated, andthat the use of the terms carousel and robot are not intended to belimiting.

Process 1800 generally may be the same as or similar to process 1200,but may differ in the incorporation of a rotating table 1705 andcorresponding sensors 1410, 1420, in lieu of the conveyor 1105 andsensor 1110, 1115. In addition, the medicine transfer container 375 andthe dispensed medicine container 365 are moved to medicine dischargepoint 1715 at blocks 1812, 1822, and 1824, as opposed to medicinedischarge point 380 in process 1200. However, it should be appreciatedthat in some embodiments, the medicine discharge point 1715 may be thesame as medicine discharge point 380.

Process 1800 may be repeated for the next medicine when required orprocess 1800 may end.

In embodiments, scale(s) 395, for example, in each weighing station orstorage nests associated with each container, may check quantity ofmedicine inside each container involved in process 1800, e.g., themedicine storage container 320, the medicine transfer containers 370,375, and the dispensed medicine container 365.

In general, process 1800 may be a closed feedback loop process withstable and fast convergent iterations. In addition, the processor 106may communicate with, i.e., send commands to, receive data from, and thelike, to various components of the dispensing unit 102 and/or system 500to perform process 1800, and may decide the best way to distribute themedicine among medicine storage container 320, the medicine transfercontainers 370, 375, and the dispensed medicine container 365 based onprocess 1800.

FIG. 19A illustrates an exemplary sub-assembly 1900 of the discloseddispenser 102. FIG. 19B illustrates the exemplary sub-assembly of FIG.19A during operation.

Sub-assembly 1900 includes medicine container transfer unit 330 includeshaving carousel 310, and medicine container transfer unit 345 includes arobot with end of arm tool. Medicine transfer unit 355 includes arotating table 1705, two sensors 1710 (not visible) and 1720, and robot1345 having end of arm tool 1010, another sensor 1330, and vacuum head1315. Sensor 1905 is additionally positioned orthogonal to a surface oftable 1705. Robot or medicine container transfer unit 345 and robot 1345may be two different robots, or two different parts of the same onerobot. Sub-assembly 1900 includes weight checking station 360, acalibration and verification device 382 (not visible) to automaticallycalibrate weight detecting devices, dispensed medicine container 365,and medicine transfer container 370 and 375. Medicine storage container320 is positioned on carousel 310. FIG. 19B shows end of arm tool 1310at medicine discharge position 1325 to discharge medicine into themedicine storage container 320 at medicine container transfer unit 330discharge position 1020.

Referring now to FIG. 20, a flow diagram of another exemplary process2000 for operating the dispensing unit 102, which may incorporate thesub-assembly 1100, is illustrated. Process 2000 may include operationsthat may be part of program 110, stored on memory 108, and/or executedby processor 106. Process 2000 may take many different forms and includemultiple and/or alternate steps. While an exemplary process is shown,the exemplary steps illustrated are not intended to be limiting. Indeed,additional or alternative steps and/or implementations may be used. Inaddition, for purposes of process 2000, the first medicine containertransfer unit 330 is referred to as the carousel, and the secondmedicine container transfer unit 345 is referred to as the robot.However, it should be appreciated that any medicine container transferunit 330, 345 for performing the respective step(s) is contemplated, andthat the use of the terms carousel and robot are not intended to belimiting.

Blocks 2002 through 2012 may be the same or similar as blocks 1802through 1812 of process 1800. Process 2000 may begin to diverge fromprocess 1800 at block 2014 at which the rotating table 1705 may vibrateto spread out medicine evenly.

At block 2016, the rotating table 1705 may rotate until a sensor 1905detects medicine, after which the rotating table 1705 may stop.

At block 2018, robot 1345 may move forward from a home position 1010until sensor 1030 detects medicine on the rotating table 1705, afterwhich robot 1305 may stop.

At block 2020, vacuum head 1315 may descend to pick up the medicine andthen vacuum head 1315 may return to its original position.

At block 2022, robot 1345 may move forward to discharge the medicine onthe vacuum head 1315 into the medicine transfer container 370, 375 atmedicine discharge point 1715. Robot 1345 may also discharge themedicine on the vacuum head 1315 into the medicine transfer container370, 375 at medicine discharge point 380 (not shown). Robot 1345 mayalso pick up medicine from medicine transfer containers 370,375 atmedicine discharge point 380 or 1715 and discharge onto the medicinetransfer unit 355.

At block 2024, processor 106 may determine if the medicine in themedicine transfer container 370, 375 has reached the required dosage. Ifit has, then process 2000 may proceed to block 2026. If it has not, andthere is still medicine left along the pathway of the motion of robot1345, then process 2000 may repeat blocks 2016 to 2022 until therequired dosage has been reached, after which process 2000 may proceedto block 2026.

At block 2026, carousel 310 may transfer the medicine storage container320 to the medicine discharge point 1715, and rotating table 1705 mayrotate to discharge all remaining medicine on the rotating table 1705into the medicine storage container 320. Process 2000 may then proceedto block 2030.

At block 2028, processor 106 may determine if any medicine remains onthe rotating table 1705. If so, and the medicine inside the medicinetransfer container 370, 375 is still less than required dosage, blocks2004 through 2026 may be repeated.

At block 2030, all the medicine inside of the medicine transfercontainer 370, 375 may be discharged into the dispensed medicinecontainer 365.

Process 2000 may be repeated for the next medicine when required orprocess 2000 may end.

In embodiments, scale(s) 395, for example, in each weighing station orstorage nests associated with each container, may check quantity ofmedicine inside each container involved in process 2000, e.g., themedicine storage container 320, the medicine transfer containers 370,375, and the dispensed medicine container 365.

In general, process 2000 may be a closed feedback loop process withstable and fast convergent iterations. In addition, the processor 106may communicate with, i.e., send commands to, receive data from, and thelike, to various components of the dispensing unit 102 and/or system 500to perform process 2000, and may decide the best way to distribute themedicine among medicine storage container 320, the medicine transfercontainers 370, 375, and the dispensed medicine container 365 based onprocess 2000.

FIG. 21A illustrates an exemplary sub-assembly 2100 of the discloseddispenser 102. FIG. 21B illustrates dispenser 102 having a rotatingtable, a robot, a vacuum head (mounted on the same robot or a differentrobot), a vision system, and a carousel. Sub-assembly 2100 illustratesmedicine container transfer unit 330 having carousel 310, and medicinecontainer transfer unit 345 includes a robot with end of arm tool.Medicine transfer unit 355 includes a rotating table 1705, three sensors1710 (not visible), 1720 and 1905, another robot with 1345 with end ofarm tool 1310, vacuum head 1315, and machine vision system 1505. Robot345 and robot 1345 may be two different robots, or two different partsof the same one robot. Sub-assembly 2100 includes weight checkingstation 360, a calibration and verification device 382 (not visible)including to automatically calibrate weight detecting devices, dispensedmedicine container 365, and medicine transfer container 370 and 375.Medicine storage container 320 is positioned on carousel 310.

FIG. 21B shows the end of arm tool 1310 at medicine discharge position1325 to discharge medicine into the medicine storage container 320 atmedicine container transfer unit 330 discharge position 1320.

Referring now to FIG. 22, a flow diagram of another exemplary process2200 for operating the dispensing unit 102, which may incorporate thesub-assembly 2100, is illustrated. Process 2200 may include operationsthat may be part of program 110, stored on memory 108, and/or executedby processor 106. Process 2200 may take many different forms and includemultiple and/or alternate steps. While an exemplary process is shown,the exemplary steps illustrated are not intended to be limiting. Indeed,additional or alternative steps and/or implementations may be used. Inaddition, for purposes of process 2200, the first medicine containertransfer unit 330 is referred to as the carousel, and the secondmedicine container transfer unit 345 is referred to as the robot.However, it should be appreciated that any medicine container transferunit 330, 345 for performing the respective step(s) is contemplated, andthat the use of the terms carousel and robot are not intended to belimiting.

Process 2200 generally may combine various blocks from the differentprocesses 1000, 1200, 1400, 1600, and/or 1800 described above. Forexample, blocks 2202 through 2214 correspond to blocks 2002 through 2014of process 2000. The remaining blocks of process 2200 may correspond toblocks 1616 through 1636 of process 1600, where process 2200 differs inthe use of rotating table 1705 in place of the conveyor 1105, and sensor2205 in place of sensor 1115.

As with the other processes described above, process 2200 may berepeated for the next medicine when required.

In embodiments, scale(s) 395, for example, in each weighing station orstorage nests associated with each container, may check quantity ofmedicine inside each container involved in process 2200, e.g., themedicine storage container 320, the medicine transfer containers 370,375, and the dispensed medicine container 365.

In general, process 2200 may be a closed feedback loop process withstable and fast convergent iterations. In addition, the processor 106may communicate with, i.e., send commands to, receive data from, and thelike, to various components of the dispensing unit 102 and/or system 500to perform process 2200, and may decide the best way to distribute themedicine among medicine storage container 320, the medicine transfercontainers 370, 375, and the dispensed medicine container 365 based onprocess 2200.

Systems and methods are provided for dispensing medication in dosagesthat comply with a medicine regimen. An exemplary system and method mayinclude operations and/or instructions comprising dispensing medicinefrom a first medicine container to a transfer device; dispensingmedicine from the transfer device to a second medicine container,monitoring a medicine distribution relative to the first medicinecontainer by way of a first sensor, the second medicine container by wayof a second sensor, and the transfer device by way of a third sensor;and automatically adjusting the medicine distribution among the firstmedicine container, the second medicine container, and the transferdevice.

A system for dispensing medication includes a carousel configured torotate about a rotational center, the carousel having a plurality ofweight check stations disposed about a circumference thereof, a medicinecontainer transfer unit positioned proximate the carousel, the medicinecontainer transfer unit configured to engage a medicine storagecontainer positioned on one of the weight check stations and move themedical storage container to a first discharge point, and a medicinetransfer unit positioned proximate the medicine container transfer unitsuch that medicine discharged from the medicine storage container at thefirst discharge point is discharged onto the medicine transfer unit, andmedicine on the medicine transfer unit is discharged from the medicinetransfer unit at a second discharge point, the medicine transfer unithaving a sensor to estimate how much medicine is on the medicinetransfer unit. The system also includes a first medicine transfercontainer positioned on one of the weight check stations at the seconddischarge point to receive the medicine discharged from the medicinetransfer unit and a controller. The controller is configured to causethe medicine storage container to discharge at least a firstpredetermined amount of medicine from the medicine storage containeronto the medicine transfer unit, cause the medicine transfer unit todischarge at least a second predetermined amount of medicine to thefirst medicine transfer container, determine whether the first medicinetransfer container has an amount of medicine greater than a desiredsingle dose, and if the amount of medicine in the first medicinetransfer container is greater than the desired single dose, then movethe first medicine transfer container to the first discharge point viathe carousel and via the medicine container transfer unit, move a secondmedicine transfer container to the second discharge point, and dischargemedicine from the first medicine transfer container, onto the medicinetransfer unit, and from the medicine transfer unit into the secondmedicine transfer container.

The controller is further configured to move the second medicinetransfer container to the first discharge position, and the firstmedicine transfer container to the second discharge position, anddischarge medicine from the second medicine transfer container until atleast the desired single dose of medicine is present in the secondmedicine transfer container. The controller is further configured tomove the first medicine transfer container to the second dischargeposition, and the second medicine transfer container to the firstdischarge position, and discharge medicine from the first medicinetransfer container until the desired single dose of medicine is presentin the first medicine transfer container.

It will be appreciated by those skilled in the art that the presentinvention may be embodied in other specific forms without departing fromthe spirit or essential character thereof. The described embodiments aretherefore considered in all respects to be illustrative not restrictive.The scope of the invention is indicated by the appended clauses, not theforegoing description, and all changes that come within the meaning andrange of equivalents thereof are intended to be embraced therein.

What is claimed is:
 1. A system for dispensing medication, the systemcomprising a memory and a processor that provides operations including:dispense medicine from a first medicine container to a transfer device;dispense medicine from the transfer device to a second medicinecontainer; monitor a medicine distribution relative to the firstmedicine container, the second medicine container, and the transferdevice by way of at least one monitoring device, and automaticallyadjust the medicine distribution among the first medicine container, thesecond medicine container, and the transfer device until the medicinedistribution in at least one of the second medicine container and thetransfer device equals a predetermined amount.
 2. The system of claim 1,wherein the medicine distribution is automatically adjusted in responseto feedback from the at least one monitoring device.
 3. The system ofclaim 1, wherein the medicine distribution is automatically adjusteduntil the predetermined amount is reached in at least one of themedicine containers.
 4. The system of claim 1, wherein at least thefirst medicine container and the second medicine container are weighedto monitor the medicine distribution.
 5. The system of claim 1, whereinat least the first medicine container is moved to a discharge positionabove the transfer device to dispense medicine to the transfer device.6. The system of claim 1, wherein at least one of the first medicinecontainer and the second medicine container is moved to a dischargeposition at an end of the transfer device to receive medicine therefrom.7. The system of claim 1, wherein the predetermined amount is moved fromthe at least one of the second medicine container and the transferdevice into a third medicine container.
 8. The system of claim 7,wherein the medicine distribution in excess of the predetermined amountis moved into the first medicine container.
 9. A non-transitory computerreadable medium storing instructions comprising: dispense medicine froma first medicine container to a transfer device; dispense medicine fromthe transfer device to a second medicine container; monitor a medicinedistribution relative to the first medicine container, the secondmedicine container, and the transfer device by way of at least onemonitoring device; automatically adjust the medicine distribution amongthe first medicine container, the second medicine container, and thetransfer device until the medicine distribution in at least one of thesecond medicine container and the transfer device equals a predeterminedamount.
 10. The medium of claim 9, wherein the medicine distribution isautomatically adjusted in response to feedback from the at least onemonitoring device.
 11. The medium of claim 9, wherein the medicinedistribution is automatically adjusted until the predetermined amount isreached in at least one of the medicine containers.
 12. The medium ofclaim 9, wherein at least the first medicine container and the secondmedicine container are weighed to monitor the medicine distribution. 13.The medium of claim 9, wherein at least the first medicine container ismoved to a discharge position above the transfer device to dispensemedicine to the transfer device.
 14. The medium of claim 9, wherein atleast one of the first medicine container and the second medicinecontainer is moved to a discharge position at an end of the transferdevice to receive medicine therefrom.
 15. The medium of claim 9, whereinthe predetermined amount is moved from the at least one of the secondmedicine container and the transfer device into a third medicinecontainer.
 16. The medium of claim 9, wherein the medicine distributionin excess of the predetermined amount is moved into the first medicinecontainer.
 17. A method for dispensing medication, the methodcomprising: dispensing medicine from a first medicine container to atransfer device; dispensing medicine from the transfer device to asecond medicine container; monitoring a medicine distribution relativeto the first medicine container, the second medicine container, and thetransfer device by way of at least one monitoring device; andautomatically adjusting the medicine distribution among the firstmedicine container, the second medicine container, and the transferdevice until the medicine distribution in at least one of the secondmedicine container and the transfer device equals a predeterminedamount.
 18. The method of claim 17, wherein the medicine distribution isautomatically adjusted in response to feedback from the at least onemonitoring device.
 19. The method of claim 17, wherein the medicinedistribution is automatically adjusted until the predetermined amount isreached in at least one of the medicine containers.
 20. The method ofclaim 17, wherein at least the first medicine container and the secondmedicine container are weighed to monitor the medicine distribution.